시간 제한
메모리 제한
시간 제한
2초
메모리 제한
128 MB
N개의 강의가 있다. 각 강의의 시작 시각과 종료 시각이 주어질 때, 모든 강의를 진행하기 위해 필요한 강의실 수를 최소로 하고 싶다.
한 강의실에서는 동시에 두 개 이상의 강의를 진행할 수 없다. 단, 한 강의가 끝나는 시각과 다른 강의가 시작하는 시각이 같다면 두 강의는 같은 강의실을 사용할 수 있다.
필요한 최소 강의실 수 K와 각 강의에 배정할 강의실 번호를 구하라.
첫째 줄에 강의의 개수 N이 주어진다. 1 <= N <= 100,000이다.
둘째 줄부터 N개의 줄에 걸쳐 각 줄마다 세 정수 i, s, e가 주어진다. 이는 강의 번호가 i, 시작 시각이 s, 종료 시각이 e라는 뜻이다.
강의 번호는 1부터 N까지이며, 입력에서 순서대로 주어지지 않을 수 있지만 각 번호는 정확히 한 번씩만 주어진다. 시작 시각과 종료 시각은 0 이상 1,000,000,000 이하의 정수이고, 항상 s < e이다.
첫째 줄에 필요한 최소 강의실 수 K를 출력한다.
다음 N개의 줄에는 강의 번호 1부터 N까지 차례대로, 각 강의에 배정한 강의실 번호를 한 줄에 하나씩 출력한다. 강의실 번호는 1부터 K까지의 정수이다.