11000번 강의실 배정


11000번 강의실 배정

https://www.acmicpc.net/problem/11000 필요한 로직 : 그리디 [논리] 우선순위큐 두개를 활용했다. 하나(heap_for_allocation)는 시작 시간이 이른 순으로 강의를 할당하기 위해 사용하고, 다른 하나(heap_for_validation)는 종료 시간이 가장 빠른 강의를 파악하기 위해 사용했다. 즉 배치와 검증 과정에 힙 자료구조를 활용했다. 물론 배치의 경우 우선순위큐를 활용하지 않고 그냥 큐에 넣고 오름차순 정렬해도 된다. heap_for_validation의 top은 현재 가장 빨리 끝나는 강의다. 따라서 이 강의보다 일찍 시작하는 강의가 들어와야 한다면 (1) 강의실을 새롭게 할당해야 하고, 아니라면 (2) 강의실을 서로 replace한다. (1) 할당 : 강의실 하..........



원문링크 : 11000번 강의실 배정