문제 URL:
https://www.acmicpc.net/problem/11399
11399번: ATM
첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000)
www.acmicpc.net
이 문제는 각각의 사람들이 돈을 인출하는데 필요한 시간 합의 최솟값을 출력하는 문제로,
인출 시간이 짧은 사람부터 긴 사람 순으로 정렬을 한 뒤
각 사람들의 인출 소요 시간을 더해주면 인출 소요 시간의 최소값을 구할 수 있다.
#include <iostream>
#include <algorithm>
#define MAX 1000
using namespace std;
int N;
int person[MAX];
int time = 0;
int main() {
cin >> N;
for (int i = 0; i < N; i++)
cin >> person[i];
sort(person, person + N);
for (int i = 0; i < N; i++)
for (int j = 0; j <= i; j++)
time += person[j];
cout << time << "\n";
return 0;
}