반응형
Notice
Recent Posts
Recent Comments
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
관리 메뉴

Easy-So-Easy

[백준] 13458번 시험 감독 - C/C++ 본문

BaekJoon

[백준] 13458번 시험 감독 - C/C++

섭_민 2023. 7. 5. 11:47
반응형

백준 13458 문제(Problem)

백준 13458
백준 13458 문제

 

입력

첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다.

둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다.

셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000)

출력

각 시험장마다 응시생을 모두 감독하기 위해 필요한 감독관의 최소 수를 출력한다.

 

 

풀이 & 전체 코드(Solution & Code)

#include<iostream>
using namespace std;
int n, a[1000001], b, c;
long long cnt;

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

  cnt = n; // 초기 감독관 수를 테스트 사이트의 수로 설정

  for(int i=0; i<n; i++) {
    a[i] -= b; // 일반 감독관이 감독할 수 있는 인원(b)을 지원자 수에서 뺌

    if(a[i] > 0) {
      // 만약 남은 지원자 수(a[i])가 0보다 크다면
      // 부감독관이 필요한 경우이므로 cnt를 증가시킴
      cnt += a[i] / c; // 남은 지원자 수를 부감독관이 감독할 수 있는 인원(c)로 나눈 몫을 cnt에 더함

      if(a[i] % c)
        cnt++; // 만약 나머지가 있다면, 나머지만큼의 인원을 추가로 감독할 부감독관이 필요하므로 cnt를 1 증가시킴
    }
  }

  cout << cnt; // 필요한 최소 감독관 수를 출력

  return 0;
}
반응형