728x90
반응형

그리디 알고리즘 문제이다. 정렬을 사용하면 쉽게 풀 수 있다!

lambda를 사용해 끝나는 시간과 시작하는 시간 순으로 두 번 정렬해주는 게 핵심이다. 

li = [list(map(int, input().split())) for _ in range(int(input()))]
li.sort(key=lambda x : (x[1], x[0]))
cnt = 1
end_time = li[0][1]
for i in range(1, len(li)):
    if li[i][0] >= end_time:
        cnt += 1
        end_time = li[i][1]
print(cnt)
728x90
반응형

+ Recent posts