회의실배정

2020. 8. 18. 23:461일 1 알고리즘

시작시간과 끝나는 시간이 주어져 있고, 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾는 알고리즘을 만들어봅니다

import sys

N = int(input())
meeting = []
for _ in range(N):
    meeting.append(list(map(int, sys.stdin.readline().split())))

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

max_meeting = 0
start = 0
for meet in meeting:
    if meet[0] >= start:
        start = meet[1]
        max_meeting += 1
        
print(max_meeting)

처음은 내장함수인 sys를 가져와 주고 변수를 지정과 배열을 지정해주고 반복문을 사용하여 값을 리스트에 저장하여주고 sort를 사용하여 정렬해주고 빨리 끝나는 것 중 가장 빨리 시작하는 순서대로 더해주고 출력해줍니다

'1일 1 알고리즘' 카테고리의 다른 글

[백준]잃어버린 괄호  (0) 2020.08.20
[백준]ATM  (0) 2020.08.20
[백준]동전 0  (0) 2020.08.17
[백준]평범한 배낭  (0) 2020.08.16
[백준] 연속합  (0) 2020.08.16