[백준] 11000번: 강의실 배정 - JAVA
문제 바로가기> 11000번: 강의실 배정 그리디 알고리즘으로, 우선순위 큐를 이용해서 풀 수 있다. 1 ≤ N ≤ 200,000이므로 브루트포스를 돌리면 당연히 시간초과가 난다. 따라서 정렬을 이용한 우선순위 큐를 이용해 그리디 알고리즘으로 풀어야 한다. 정렬 기준그렇다면 어떤 기준으로 정렬을 해야할까?처음에 필자는 종료시각을 기준으로 (빨리 끝나는 시각 순으로 오름차순) 정렬을 해서 틀렸다...시작 시각으로 정렬을 해야 앞에서부터 차곡 차곡 강의 간의 텀을 짧게 해 배정이 가능한 것이었다. 종료 시간을 우선순위 큐에 넣고 비교정렬 자체는 시작 시각을 기준으로 하였지만, 결국 어떤 강의가 들어갈 자리를 찾기 위해서는 종료시각과 비교를 해야 한다.따라서 그러기 위해서는 종료 시각을 담는 우선순위 큐가 ..