백준 13458 c++ 시험감독
2023. 8. 1. 18:01ㆍ알고리즘
13458 문제는 수학 문제이다. 간단한 문제인데 한번 틀렸다.
이 문제에서 놓칠 수 있는 부분은 두가지이다.
1. 어떤 부분의 자료형을 큰 것을 쓸 지
2. 사소한 알고리즘 실수
1번 같은경우에는 시험 감독의 수만 unsigned int로 선언하면 된다.
내가 실수했던 부분은 v[i]=v[i]-B해서 총 감독관이 감시할 수 있는 응시생만큼을 뺀 후 0보다 작을 경우에 부감독관을 할당하지 않아도 되는 부분을 뺐다.
고치고 나서 맞았다
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int N, B, C;
unsigned long long total;
vector<int> v;
int main(void) {
cin.tie(NULL);
ios::sync_with_stdio(false);
cin >> N;
for (int i = 0;i < N;i++) {
int x;
cin >> x;
v.push_back(x);
}
cin >> B >> C;
for (int i = 0;i < N;i++) {
v[i] = v[i] - B;
total++;
if (v[i] <= 0) {
continue;
}
if (v[i] % C > 0) {
total += v[i] / C + 1;
}
else {
total += v[i] / C;
}
}
cout << total << endl;
return 0;
}
'알고리즘' 카테고리의 다른 글
백준 구슬 탈출 2 C++ (1) | 2023.08.04 |
---|---|
백준 14888 연산자 끼워넣기 c++ (1) | 2023.08.01 |
백준 3190 뱀 c++ (2) | 2023.08.01 |
백준 15686 치킨배달 c++ (2) | 2023.07.27 |
백준 15683 c++ (0) | 2023.07.26 |