반응형
1417번: 국회의원 선거
첫째 줄에 후보의 수 N이 주어진다. 둘째 줄부터 차례대로 기호 1번을 찍으려고 하는 사람의 수, 기호 2번을 찍으려고 하는 수, 이렇게 총 N개의 줄에 걸쳐 입력이 들어온다. N은 50보다 작거나 같
www.acmicpc.net
C++
#include <iostream>
using namespace std;
int main()
{
cin.tie(0)->sync_with_stdio(0);
int N, T[51] = {0, }, cnt = 0, i, idx;
cin >> N;
// 받을 개수가 하나라면 계산 없이 종료
if (N <= 1)
{
cout << '0';
return (0);
}
for (i = 0; i < N; i++)
cin >> T[i];
while (true)
{
int max = 0;
for (i = 1; i < N; i++)
// 인덱스 1 ~ N-1 중에서 가장 큰 값을 고른다.
if (max < T[i])
{
max = T[i];
idx = i;
}
// 가장 큰 값이 인덱스 0보다 작다면 종료.
if (T[0] > T[idx])
break;
// 종료되지 않으면, 가장 큰 값 -= 1, T[0] += 1, 매수회수 + 1
T[0]++;
T[idx]--;
cnt++;
}
cout << cnt;
}
반응형