Notice
Recent Posts
Recent Comments
Link
알고리즘 모음(C++)
백준 13458 - 시험 감독(C++) 본문
문제 링크입니다. https://www.acmicpc.net/problem/13458
삼성 SW 기출문제 였습니다.
간단한 산수 문제였음으로 쉽게 풀 수 있었습니다.
먼저 한개의 강의실에는 한명의 감독관이 필요합니다.
따라서 B의 값보다 작은 강의실은 모두 1입니다.
B의 값보다 큰 값을 가진 강의실의 경우, 보조 감독관이 필요합니다.
이때, 보조 감독관이 몇명 필요한지를 구해야합니다.
예시를 들어보면, 4명이 남지만, 보조 감독관이 2인 경우 -> 4 % 2 == 0 임으로 2명만 필요합니다.
4명이 남지만, 보조 감독관이 3인 경우 -> 4 % 3 == 1 임으로 2명이 필요합니다.
따라서 나머지가 있으면 한명을 더해주고, 아니면 몫만 더해주면 됩니다.
이때 총 감독의 수는 int의 범위를 벗어날 수 있으므로 long long으로 선언해주셔야 합니다.
자세한 것은 코드를 참고해주세요.
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <queue>
#include <vector>
#include <stack>
#include <cmath>
#include <cstring>
using namespace std;
int N;
vector<int> people;
int B, C;
long long int need;
void solve() {
need += N;
for (int i = 0; i < N; i++) {
people[i] -= B;
if (people[i] > 0) {
if (people[i] % C == 0) {
need += people[i] / C;
}
else {
need += (people[i] / C + 1);
}
}
}
cout << need;
}
int main() {
cin.tie(0);
cout.tie(0);
cin >> N;
for (int i = 0; i < N; i++) {
int x;
cin >> x;
people.push_back(x);
}
cin >> B >> C;
solve();
return 0;
}
질문 및 조언 댓글 남겨주세요.
'백준' 카테고리의 다른 글
백준 21610 - 마법사 상어와 비바라기(C++) (0) | 2021.12.31 |
---|---|
백준 20057 - 마법사 상어와 토네이도(C++) (0) | 2021.12.28 |
백준 11559 - Puyo Puyo(C++) (0) | 2021.12.28 |
백준 20056 - 마법사 상어와 파이어볼(C++) (0) | 2021.12.26 |
백준 21609 - 상어 중학교(C++) (0) | 2021.12.22 |