욤미의 개발일지
[BOJ] 11000번 강의실 배정 (Python) 본문
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