회의실배정
2020. 8. 18. 23:46ㆍ1일 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 |