[백준/Python] BOJ 7983 - 내일 할 거야

NAGANG LEE·2023년 8월 11일

알고

목록 보기
14/118

👀 문제

7983번: 내일 할 거야 ✨ 골드 5

아 과제 하기 싫다. 아무 것도 안 하고 싶다. 더 적극적이고 격렬하게 아무 것도 안 하고 싶다.

있잖아. 내가 아까 책상에다가 n개의 과제 목록을 적어놨어. 각각의 과제 i는 di 일이 걸리고, 오늘로부터 ti 일 안에 끝내야 해. 그러니까 오늘이 0일이면, ti일이 끝나기 전에 제출이야. 과제는 한번 시작하면 쉬지 않고 계속해야 해. 안 그러면 머리 아파 지거든.

근데 있잖아. 내가 지금 너무, 너무 아무 것도 안 하고 싶어. 그래서 오늘은 아무 것도 안 할 거야. 더 중요한 게 뭔지 알아? 사실 나 내일도, 모레도, 아무 것도 안 하고 싶어. 한 며칠 동안은 계속 아무 것도 안하려고. 아. 과제가 있을 때 내가 내일부터 연속으로 최대 며칠동안 놀 수 있는지 궁금하다. 궁금하긴 한데, 난 아무 것도 안 하고 싶어.

좋은 생각이 났다. 너희가 이걸 대신 구해주면, 내가 너희의 맞은 문제 수를 하나 올려줄게.


🔑 키포인트

람다식 이용


✍️ 코드

import sys

n = int(sys.stdin.readline())
assignment = []

for _ in range(n):
    d, t = map(int, sys.stdin.readline().split())
    assignment.append([d, t])

# 마감 날짜 내림차순 정렬
assignment.sort(key=lambda x:x[1], reverse=True)

# 마지막 과제 무조건 해야 하는 날에 하고 남는 날
day = assignment[0][1] - assignment[0][0] + 1

# 반복문
for i in range(1, len(assignment)):
    # 남은 날이 두 번째 과제 마감 기한보다 뒤인 경우
    if assignment[i][1] < day:
        # 남은 날 앞으로 땡겨 주기
        day = assignment[i][1] - assignment[i][0] + 1
    else:
        day = day - assignment[i][0]

print(day-1)
profile
모바일 개발자를 목표로 하고 있어요 💭

0개의 댓글