만약에 과제를 끝내야 하는 날이 False일 경우, True로 바꿔주고 answer에 과제 점수를 누적시켜준다
과제를 끝내야 하는 날이 True일 경우, 하루 전을 탐색을 한다
이 탐색을 False가 있을 때까지 반복한다 (인덱스 0은 무조건 False이어야 하니깐, 이것도 생각해 둔다)
인덱스 1까지 True면 while문을 그냥 빠져나온다 (즉, 그 과제는 날려버려야 한다)
코드
N = int(input())
homework = []
for _ in range(N):
homework.append(tuple(map(int, input().split())))
day = [False] * 1001
homework.sort(key = lambda x : -x[1])
answer = 0
print(homework)
for time, work in homework:
i = time
while i > 0:
if day[i] == False:
day[i] = True
answer += work
break
else:
i -= 1
print(answer)