728x90
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명이고 부감독관은 여러명 있어도 된다고 한다.
예제 TC를 통해 해당 문장의 정확한 뜻을 유추해보자.
1
1
1 1
한개의 시험장에 한명이 시험볼 때 1을 출력할 것을 요구하고 있다.
즉 이 TC의 답 1은 무조건 들어가야 하는 총감독관을 의미하고 부감독관은 들어가지 않아도 상관없음을 알 수 있다.
이를 통해 총감독관을 포함하여 각 시험장에 모든 응시생을 감시할 수 있는 최소 감독관을 배치하면 필요한 감독관의 최소 인원을 구할 있게 된다.
나누기와 나머지 연산을 통해 각 시험장에 감독관 몇명이 필요한지 구현하도록 하자.
전체 코드
더보기
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
ll res;
int main()
{
ios::sync_with_stdio(false); cin.tie(nullptr);
int n; cin >> n;
vector<int> field(n);
for (int i = 0; i < n; ++i)
cin >> field[i];
int master, slave;
cin >> master >> slave;
for (int j = 0; j < n; ++j)
{
field[j] -= master, ++res;
if (field[j] <= 0)
continue;
res += field[j] / slave;
if (field[j] % slave)
++res;
}
cout << res;
}
728x90
'백준 > 그리디' 카테고리의 다른 글
백준 1082 - 방 번호 (0) | 2020.07.08 |
---|---|
백준 1080 - 행렬 (0) | 2020.06.21 |
백준 1758 - 알바생 강호 (0) | 2020.06.06 |
[ICPC] 백준 17521 - Byte Coin (0) | 2020.06.05 |
백준 4796 - 캠핑 (0) | 2020.05.30 |