1931번: 회의실 배정

(1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다.

www.acmicpc.net


끝나는 시간이 빠른 것을 채택하자!

  1. 리스트를 lambda함수로 끝나는 시간순으로 먼저 정렬하고 부가적으로 시작하는 순으로 정렬해준다
  2. 기준이 되는 끝나는 시간보다 이후에 시작하는 시간을 찾아 반복한다
import sys
input = sys.stdin.readline

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

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

meeting =1
end = time[0][1]
for i in range(1, len(time)):
    if time[i][0] >= end:
        end = time[i][1]
        meeting+=1

print(meeting)

'개발 > 알고리즘' 카테고리의 다른 글

[백준 2630] 색종이 만들기 (python)  (0) 2021.03.19
[백준 2606] 바이러스 (python)  (0) 2021.03.19
[백준 11723] 집합 (python)  (0) 2021.03.18
[백준 1541] 잃어버린 괄호 (python)  (0) 2021.03.18
[백준 1074] Z (python)  (0) 2021.03.17
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기