문제
https://www.acmicpc.net/problem/2847
학습 키워드
- 그리디
풀이 및 코드
각 난이도의 점수가 증가해야하므로, 마지막 난이도부터 시작해서 현재 난이도가 다음 난이도보다 점수가 더 큰 경우 현재 난이도의 점수를 다음 난이도 점수의 -1로 변경하면 된다.
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int[] scores = new int[N];
for (int i = 0; i < N; i++) {
scores[i] = sc.nextInt();
}
int answer = 0;
for (int i = N - 2; i >= 0; i--) {
int diff = 0;
if (scores[i] >= scores[i + 1]) {
diff = scores[i] - scores[i + 1] + 1;
}
answer += diff;
scores[i] -= diff;
}
System.out.println(answer);
}
}
'알고리즘 > 백준' 카테고리의 다른 글
99클럽 코테 스터디 18일차 TIL (2212번: 센서) (2) | 2024.11.14 |
---|---|
99클럽 코테 스터디 17일차 TIL (31926번: 밤양갱) (2) | 2024.11.13 |
99클럽 코테 스터디 15일차 TIL (13417번: 카드 문자열) (1) | 2024.11.11 |
99클럽 코테 스터디 14일차 TIL (14916번: 거스름돈) (0) | 2024.11.11 |
99클럽 코테 스터디 12일차 TIL (7569번: 토마토) (0) | 2024.11.08 |
댓글