알고리즘 관련/BOJ
11399 ATM
Andrew-Yun
2020. 12. 25. 23:41
문제의 조건
- 맨 뒷 줄의 대기자는 앞 줄의 대기자들의 인출시간을 다 더한 값 + 자기가 걸리는 시간만큼 걸리게 된다.
- 모든 대기자들의 인출 시간 중 최솟값을 구해야 함
접근
단순하게 풀기
- 단순하게 더하여 구할 수 있다.
정답코드
더보기
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int N;
int GetWaitingTime(vector<int>& v)
{
int sum = 0;
for (int i = 0; i < v.size(); i++) {
for (int j = 0; j < i; j++) {
sum += v[j];
}
sum += v[i];
}
return sum;
}
int main()
{
cin >> N;
vector<int> v(N, 0);
for (int i = 0; i < N; i++) {
cin >> v[i];
}
sort(v.begin(), v.end());
printf("%d\n", GetWaitingTime(v));
return 0;
}