알고리즘/백준
99클럽 코테 스터디 16일차 TIL (2847번: 게임을 만든 동준이)
Sondho
2024. 11. 12. 16:53
문제
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);
}
}