반응형

11399번

제일 앞에서는 사람이 걸리는 시간은 뒤의 사람 수만큼 곱해지므로 오름차순으로 세우면 됨

import java.util.*;

public class Problem11399 {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        int cnt = sc.nextInt(); //사람수
        sc.nextLine();
        String[] temptimes = sc.nextLine().split(" ");
        int[] times = Arrays.stream(temptimes)
                    .mapToInt(Integer::parseInt)
                    .toArray();
        Arrays.sort(times); //오름차순 정렬
        
        int timeTotal = 0;
        for(int time : times){
            timeTotal += time * cnt;
            cnt -= 1;
        }
        System.out.println(timeTotal);
    }
}
반응형

+ Recent posts