BOJ

백준 11399번: ATM

혀내 2022. 2. 13. 10:51
반응형

 

풀이

  간단한 그리디 문제이다. 가장 짧은 시간이 걸리는 사람부터 차례로 정렬한 다음, 각 사람들이 인출하는데 걸리는 시간을 더해주면 최소값을 구할 수 있다.


코드

#include <iostream>
#include <algorithm>
#define MAX 1001
using namespace std;

int N, answer = 0;
int P[MAX];

void init() {
	cin.tie(0); cout.tie(0);
    ios_base::sync_with_stdio(false);
}

int main() {
	cin >> N; 
    for (int i = 0; i < N; i++) { 
    	cin >> P[i]; 
    }
    
    sort(P, P + N); 
    for (int i = 0; i < N; i++) {
    	answer += (P[i] * (N - i)); 
    }
    cout << answer; 
}
반응형