본문 바로가기
코딩 테스트

11399번 ATM(자바, java) - 그리디

by 주용사 2023. 1. 9.
728x90
import java.io.*;
import java.util.*;

public class Main {

	public static void main(String[] args) throws IOException {
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());

		int n = Integer.parseInt(st.nextToken());

		ArrayList<Integer> list_time = new ArrayList<>();
		st = new StringTokenizer(br.readLine());

		for(int ii = 0 ; ii < n ; ii++)
			list_time.add(Integer.parseInt(st.nextToken()));
		
		int answer = 0;
		
		/* 해결 방법 */
		/* 받은 숫자들이 작은 수가 앞에 있어야하기때문에 정렬시킨다 */
		/* 앞쪽에 있는 시간이 계속해서 더해지기때문에 앞쪽이 숫자가 작아야한다 */
		Collections.sort(list_time);
		
		for(int ii = 0 ; ii < n ; ii++)
			answer += list_time.get(ii) * (n - ii);
		
		System.out.println(answer); 
		
		br.close();
		
	}
}
728x90