문제
3주차 [백준] 국회의원선거
접근방법
- 나 말고 다른 투표자들을 리스트에 모음
- sort로 내림차순정리
- 내 표와 비교해서 크다면 하나 가져오기
- 다른 표들의 크기를 비교해서 순서정돈
- 제일 처음 요소가 내것보다 작을 때까지 반복
해결
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main() {
int n;
int meNum;
int answer = 0;
vector<int> otherNums;
cin >> n;
cin >> meNum;
otherNums.resize(n);
for (size_t i = 0; i < n - 1; i++)
{
int temp;
cin >> temp;
otherNums[i] = temp;
}
sort(otherNums.begin(), otherNums.end(), greater<int>());
while (meNum <= otherNums[0]) {
otherNums[0]--;
meNum++;
answer++;
if (otherNums[0] < otherNums[1]) {
sort(otherNums.begin(), otherNums.end(), greater<int>());
}
}
cout << answer;
return 0;
}