Algorithm/백준
[백준][13458번] 시험 감독
1일1코딩
2020. 4. 20. 23:31
https://www.acmicpc.net/problem/13458
13458번: 시험 감독
첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000)
www.acmicpc.net
결과
풀이과정
1. 최대 결과가 unsigned int의 최대값을 초과 할 수 있으므로 타입을 unsigned long long을 사용.
2. 각 시험장에 맞게 필요한 감독 수를 구하면 된다.
소스코드 (c++)
더보기
#include<stdio.h>
typedef unsigned long long ull;
int N, B, C;
int map[1000000];
int main()
{
scanf("%d", &N);
for (int i = 0; i < N; i++) {
scanf("%d", &map[i]);
}
scanf("%d %d", &B, &C);
ull answer = 0;
for (int i = 0; i < N; i++) {
int remain = map[i] - B;
if (remain > 0) {
answer += (remain / C) + 1;
if (remain%C != 0) {
answer++;
}
}
else {
answer++;
}
}
printf("%llu\n", answer);
}