은하계의 무법자 바이톡스(Bajtoks)가 또다시 곤경에 빠졌습니다. 그는 지금 비톡(Bitok) 부대를 피해 우주선을 몰고 달아나는 중입니다.
다행히 혼자가 아닙니다. 함께 탑승한 동료로 레이저포 사수 바이티녹스(Bajtinoks)와, 함선 컴퓨터를 담당하는 프로그래머인 당신이 있습니다. 비톡족은 다소 원시적인 종족이라 원거리 무기가 없어서 그저 바이톡스의 함선을 따라잡으려고만 합니다. 바이티녹스는 명사수라 결코 빗나가지 않지만, 어떤 순서로 적을 쏘아야 할지는 모릅니다. 바로 그것이 당신이 풀어야 할 문제입니다.
바이티녹스가 추격자를 모두 격추하고 탈출할 수 있도록, 적을 쏘는 순서를 계산하는 프로그램을 작성하세요.
첫째 줄에 적 함선의 수를 나타내는 정수 n (1≤n≤106)이 주어집니다. 둘째 줄에는 공백으로 구분된 두 정수 a0, v0 (−109≤a0≤109, 1≤v0≤106)이 주어지며, 각각 바이톡스 함선의 초기 위치와 속도를 뜻합니다.
이어지는 n개의 줄에는 적 함선의 정보가 주어집니다. 각 줄은 공백으로 구분된 두 정수 ai, vi (−109≤ai≤109, 1≤vi≤106)로 이루어지며, 각각 i번째 적 함선의 초기 위치와 속도를 뜻합니다. 모든 위치는 바이트미터, 모든 속도는 바이트미터/바이트초 단위이고, 모든 함선은 하나의 직선 위를 같은 방향으로 움직입니다.
바이티녹스가 한 번 쏜 뒤 다시 쏘려면 포를 재장전하기 위해 최소 1바이트초가 지나야 합니다. 그 사이 각 함선은 자신의 속도 vi만큼 이동합니다. 이 이동 도중 어떤 적 함선이라도 바이톡스와 같은 위치에 도달하면 바이톡스는 패배합니다. 단, 그런 적이 정확히 한 척뿐이고 그 적이 재장전이 끝나는 바로 그 순간(정수 시각)에 도달하는 경우에는 아직 그 적을 격추할 수 있습니다.
추격이 시작되는 시점에 바이티녹스는 이미 발사 준비가 되어 있으므로 첫 발 전에는 재장전이 필요 없습니다. 따라서 발사는 시각 0,1,2,…에 이루어질 수 있습니다.
처음에 바이톡스의 함선은 모든 함선 중 가장 앞서 있다고 가정합니다(즉 모든 i≥1에 대해 ai<a0). 함선들은 서로 아무 문제 없이 스쳐 지나갈 수 있습니다. 바이티녹스는 임의의 적을 맞힐 수 있고, 레이저가 날아가는 시간은 무시하며, 한 발이면 어떤 함선이든 파괴됩니다.
바이톡스 일행이 추격자를 모두 격추할 수 있다면, 첫째 줄에 격추 순서를 출력합니다. 이는 1부터 n까지의 정수를 각각 정확히 한 번씩 포함하는 순열이며, k번째 수는 k번째 발사로 격추하는 적 함선의 번호입니다. 탈출에 성공하는 발사 순서가 여러 개라면 그중 사전순으로 가장 앞서는 것을 출력하세요.
격추가 불가능하여 바이톡스가 반드시 패배한다면, 첫째 줄에 GAME OVER를 출력합니다.
예제에서 적 2는 시각 1에 바이톡스에게 도달하므로 늦어도 시각 1까지는 격추해야 하고, 적 1과 적 3은 훨씬 나중에 도달합니다. 탈출에 성공하는 순서 중 사전순으로 가장 빠른 것은 1 2 3입니다. 이 순서대로 쏘면 적 2는 재장전이 끝나는 시각 1에 도달하는 바로 그 순간 격추되어(그 순간 바이톡스 위치에 있는 적은 적 2 하나뿐입니다) 위기를 넘깁니다.