풀이 방법
최대로 팁을 받기 위해서는 내림차순으로 정렬해서 더해주면 된다.
tip의 타입을 int가 아닌 long으로 선언해주는 것만 주의하면 된다.
내 코드
package com.company;
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));
int N = Integer.parseInt(br.readLine());
Integer array[] = new Integer[N];
Long tip = 0L;
for (int i = 0; i < N; i++) {
array[i] = Integer.parseInt(br.readLine());
}
Arrays.sort(array, Collections.reverseOrder());
for (int i = 0; i < N; i++) {
if (array[i] - i > 0)
tip += array[i] - i;
}
System.out.println(tip);
}
}
'코딩테스트 > [백준] 코딩테스트 연습' 카테고리의 다른 글
말이 되고픈 원숭이 - 1600번 (0) | 2021.10.04 |
---|---|
뒤집기 II - 1455번 (0) | 2021.10.04 |
숨바꼭질 3 -13529번 (0) | 2021.10.03 |
DFS와 BFS - 1260번 (0) | 2021.10.02 |
저울 - 10159번 (0) | 2021.10.01 |