반갑습니다!

백준 13458 시험 감독 본문

알고리즘 문제 풀이

백준 13458 시험 감독

김덜덜이 2020. 4. 29. 00:24
13458번: 시험 감독
 
www.acmicpc.net

풀이

단순 계산으로 해결할 수 있는 문제이다. 총감독관은 1명이 필수로 들어가야하므로 각 방에 1명씩 배치하고, 남는 인원은 부감독관을 배치해서 해결할 수 있다.

코드

#include <iostream>
using namespace std;

int n, b, c;
int a[1000001];

int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);

    cin >> n;
    for (int i = 0; i < n; i++)
        cin >> a[i];
    cin >> b >> c;

    long long ans = 0;
    for (int i = 0; i < n; i++) {
        // 총감독관이 감시가능한 인원을 제거
        a[i] -= b;
        // 감시해야할 인원이 남은 경우
        if (a[i] > 0) {
            // 부감독관으로 딱 떨어지는 경우
            if (a[i] % c == 0) ans += a[i] / c;
            // 딱 떨어지지 않는 경우 부감독관을 1명 더 배치한다
            else ans += a[i] / c + 1;
        }
    }
    // ans는 부감독관의 숫자만 구해놨음으로 총감독관 n명을 더해준다
    cout << ans + n << '\n';
    return 0;
}

'알고리즘 문제 풀이' 카테고리의 다른 글

[프로그래머스] 단체사진 찍기  (0) 2020.04.29
[백준] 16985 Maaaaaaaaaze  (0) 2020.04.29
[백준] 3190 뱀  (0) 2020.04.29
[프로그래머스] 큰 수 만들기  (0) 2020.04.28
[프로그래머스] 징검다리  (0) 2020.04.27