시간 제한메모리 제한제출정답맞힌 사람정답 비율
3 초 1024 MB110462841.176%

문제

다양한 보드게임을 플레이할 수 있는 보드게임컵 파티가 2022년 12월 24일에 열립니다!

보드게임컵 파티에는 노 땡스!, 할리갈리, 체스 등 다양한 종류의 보드게임이 준비되어 있습니다!

혼자라도 좋습니다! $1$명부터 $N$명까지 즐길 수 있는 게임들이 있으니까요!

같이 게임을 할 사람을 찾고 계신가요? 걱정하지 마세요! 선호하는 최소 인원수와 최대 인원수만 작성해 주시면, 게임 매칭이 되는 대로 알려드립니다!

- 보드게임컵 운영진 일동

하지만 공지가 늦어지는 바람에 보드게임컵 파티는 운영진들끼리 보드게임을 즐기는 파티가 되었습니다.

아쉬운 마음에 실버는 보드게임컵 파티의 게임 매칭을 구현해보기로 했습니다.

게임 매칭은 다음과 같이 진행됩니다:

  • 각 플레이어는 선호하는 게임 인원수의 범위 $[a_i, b_i]$가 있습니다. 이 플레이어는 게임 인원수가 $a_i$인 이상 $b_i$인 이하인 그룹에만 들어갈 수 있습니다.
  • 플레이어는 한 명씩 차례대로 들어옵니다.
  • 플레이어가 들어올 때마다, $x$인으로 게임하는 것을 선호하는 플레이어의 수가 $x$ 이상인 $x$가 존재한다면, 그러한 $x$ 중 최댓값을 골라, $x$인으로 게임하는 것을 선호하는 플레이어들 중 가장 먼저 들어온 $x$명을 하나의 그룹으로 매칭합니다. 매칭된 플레이어들은 이후 매칭에서 제외됩니다.

$N$명의 플레이어에 $1$번부터 $N$번까지 번호가 매겨져 있습니다. $1$번 플레이어부터 순서대로 들어올 때, 새로운 매칭이 생겼는지, 매칭이 생겼다면 매칭된 플레이어의 수와 플레이어들의 번호를 출력하는 프로그램을 작성해 봅시다!

입력

첫 번째 줄에 플레이어의 수 $N$이 주어집니다.

다음 $N$개의 줄에 $1$번 플레이어부터 $N$번 플레이어의 $a_i, b_i$가 공백으로 구분되어 주어집니다.

출력

$N$개의 줄에 정답을 출력합니다.

$i$번째 줄에는 $i$번 플레이어가 들어왔을 때 새로운 매칭의 정보를 출력합니다.

새로운 매칭이 생기지 않았다면 0을 출력합니다.

새로운 매칭이 생겼다면, 매칭된 플레이어의 수 $k$와, 매칭된 플레이어들의 번호 $k$개를 오름차순으로 공백으로 구분하여 출력합니다.

제한

  • $1 \le N \le 200\,000$
  • 모든 $1 \le i \le N$에 대해 $1 \le a_i \le b_i \le N$

예제 입력 1

5
2 3
3 4
1 2
2 4
3 5

예제 출력 1

0
0
2 1 3
0
3 2 4 5

예제 입력 2

6
5 6
1 5
4 5
3 5
2 5
4 4

예제 출력 2

0
1 2
0
0
0
4 3 4 5 6

출처

Contest > BOJ User Contest > 보드게임컵 > 보드게임컵 L번