[python] 백준 1931번 회의실 배정

Youngseo Lee·2024년 8월 24일

그리디

목록 보기
1/4

백준 1931번 회의실 배정

https://www.acmicpc.net/problem/1931

문제

풀이

이 문제의 접근법: 회의를 선택할 때, 가장 빨리 끝나는 회의를 먼저 선택하는 것이 최선의 선택이다. 왜냐하면, 이후의 회의 일정을 잡을 때 가능한 많은 회의를 잡을 수 있기 때문이다.
여기까지 떠올리면 어렵지 않은 문제.

n = int(input())
time = []
for _ in range(n):
    time.append(list(map(int, input().split())))

time.sort(key = lambda x : (x[1], x[0]))

answer = []
for start, end in time: 
    if answer == [] or start >= answer[-1]:
        answer.append(end)

print(len(answer))

📌 주의

그리디... 접근법을 떠올리는 게 참 어렵군.

profile
leenthepotato

0개의 댓글