[BOJ] 2847번 게임을 만든 동준이 (Python)

2847번: 게임을 만든 동준이

N개의 레벨마다 점수가 주어진다.

플레이어의 점수 = 얻은 점수의 합 → 온라인 순위를 매김

낮은 레벨의 점수가 높은 레벨보다 낮게 조정해야함.

조건

  • 낮은 레벨부터 점수가 입력으로 주어지기 때문에 마지막 입력으로 들어온 값이 가장 큰 값이다.
  • 낮은 레벨의 점수는 반드시 다음 레벨의 점수보다 낮아야 한다.
  • 점수 1을 낮추는 방법을 1이라고 했을 때, 최소의 방법을 구하라.
  • 크거나 같은 경우, 해당 값보다 1만큼만 작으면 된다.
n = int(input())
score = []
for i in range(n):
    score.append(int(input()))

count = 0
for i in reversed(range(n-1)):
    if score[i+1] <= score[i]:
        minus = score[i] - score[i+1] + 1
        score[i] = score[i] - minus
        count += minus

print(count)

image

댓글남기기