Dazzling 개발 노트
[백준] 11399 - ATM (Java) 본문
[백준] 11399 - ATM (Java)
문제
https://www.acmicpc.net/problem/11399
풀이/후기
입력 받은 수를 정렬한 후에 누적합을 더했다.
처음에는 사람별로 시간이 정해진줄알고 정렬을 어떻게 할지 고민했는데
그냥 삽질한거였다 ㅎㅎ;
받은 값 그대로 정렬하면 된다.
코드
package Greedy;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Problem11399_re {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
StringTokenizer str = new StringTokenizer(br.readLine());
int[] list = new int[N];
for (int i=0; i<N; i++) {
list[i] = Integer.parseInt(str.nextToken());
}
Arrays.sort(list);
int[] sum = new int[N];
sum[0] = list[0];
int result = sum[0];
for (int i=1; i<N; i++) {
sum[i] = sum[i-1] + list[i];
result += sum[i];
//System.out.println(sum[i]+" "+result);
}
System.out.println(result);
}
}
Commit
참고