본문 바로가기
Python/그리디

[Algorithm] 백준 1931 회의실 배정 | 파이썬

by 유일리 2024. 6. 20.

※ 1931 회의실 배정

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

 

문제 해결 TIP

처음에는 회의 시간이 짧은 순서대로 배정을 하려 했지만, 그렇게 되면 시각 시간과 끝나는 시간을 고려하지 못하여 비효율적이다. 회의를 최대한 많이 하기 위해서는 최대한 회의가 빨리 끝나야하므로 끝나는 시간을 오름차순으로 정렬하여 배정해야한다.

 

전체 코드

N = int(input())
data = []
count = 1
for i in range(N):
    a,b = map(int,input().split())
    data.append([a,b])
data.sort(key=lambda x:(x[1],x[0]))

end = data[0][1]
for i in range(1,N):
    if data[i][0]>=end:
        end = data[i][1]
        count += 1
print(count)

댓글