욤미의 개발일지

[BOJ] 11000번 강의실 배정 (Python) 본문

Coding Test/백준

[BOJ] 11000번 강의실 배정 (Python)

욤미 2022. 9. 22. 21:26
728x90
반응형

[BOJ] 11000 강의실 배정 (Python)

 

11000번: 강의실 배정

첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (0 ≤ Si < Ti ≤ 109)

www.acmicpc.net

최소힙 자료구조를 사용한다.

시작시간과 종료시간들간의 관계를 생각하면 됨

import sys
import heapq

input = sys.stdin.readline
n = int(input())
times = [list(map(int,input().split())) for _ in range(n)]
times.sort(key=lambda x: x[0])
heap = []
heapq.heappush(heap, times[0][1])

for i in range(1, n):
	if heap[0] > times[i][0]:
		heapq.heappush(heap, times[i][1])
	else:
		heapq.heappop(heap)
		heapq.heappush(heap, times[i][1])

print(len(heap))

백준의 경우 입력시간 초과가 뜰 수 있기 때문에 아래와 같이 입력받는 부분을 적어준다.

import sys
input = sys.stdin.readline

터디 자료

 

 

 

728x90
반응형

'Coding Test > 백준' 카테고리의 다른 글

[BOJ] 1520번 내리막 길 (Python)  (0) 2022.09.27
[BOJ] 9465번 스티커 (Python)  (0) 2022.09.26
[BOJ] 9461번 파도반 수열 (Python)  (2) 2022.09.24
[BOJ] 1260번 DFS와 BFS (Python)  (0) 2022.09.20
[BOJ] 1439번 뒤집기 (Python)  (1) 2022.09.20
Comments