[백준] 2847번 게임은 만든 동준이

거북이·2023년 1월 14일
0

백준[실버4]

목록 보기
41/91
post-thumbnail

💡문제접근

  • 동준이가 레벨을 난이도 순으로 배치했는데 이 때, 실수로 쉬운 레벨이 어려운 레벨보다 점수를 많이 받는 경우를 만들었다. 문제를 해결하기 위해서 각 레벨을 클리어할 때 받을 수 있는 점수가 증가하게 만들어야 한다. 따라서 맨 뒷부분에서부터 인접한 원소의 대소를 비교해 특정 레벨의 점수를 감소시키는 횟수를 구해야 한다.

💡코드(메모리 : 30616KB, 시간 : 152ms)

N = int(input())
score = []
for _ in range(N):
    score.append(int(input()))

index = len(score) - 1
cnt = 0
while True:
    if index == 0:
        break
    if score[index] > score[index-1]:
        index -= 1
    else:
        score[index-1] -= 1
        cnt += 1
        if score[index] > score[index-1]:
            index -= 1
print(cnt)

💡소요시간 : 11m

0개의 댓글