"""
최대한 많이 사용하려면?
1. 빨리 끝나는 회의부터 찾아서
2. 차례차례 회의 스케줄에 넣음
"""
N = int(input())
meeting = []
for _ in range(N):
meeting.append(list(map(int, input().split())))
# 끝나는 시간 오름차순으로 정렬
meeting.sort(key = lambda x: (x[1], x[0]))
print(meeting)
count = 1
tmp = meeting[0][1] # 첫 회의의 끝나는 시간
for i in meeting[1:]:
if tmp <= i[0]:
count += 1
tmp = i[1]
print(count)
백준 17262번과 비슷한 문제다.
이런 문제는 시작과 끝에 초점을 맞추면 쉬운 것 같다.
이번 문제도 회의의 끝시간과 다음회의의 시작시간을 비교하면 된다.
그런데 최대한 많은 회의를 해야하므로
빨리끝나는 회의부터 차례차례 배정하면 된다.
key = lambda x: (x[1], x[0]) 를 통해 1번째 요소를 오름차순으로 정렬할 수 있다.
'알고리즘 문제' 카테고리의 다른 글
백준 1946 파이썬 (0) | 2021.10.05 |
---|---|
백준 11047 파이썬 (0) | 2021.03.25 |
백준 16208 (0) | 2021.03.22 |
백준 16435 (0) | 2021.03.22 |
백준 11399 (0) | 2021.03.15 |