문제
은행 창구에서는 고객들이 기다리는 동안 화면에서 그 지역에 있는 가게 등 여러 업체의 광고가 계속 방영되는 것을 볼 수 있다. 여러 업체의 광고를 방영하다보니 방영하는 순서 때문에 늘 마찰이 생기곤 하였다. 은행에서는 광고를 신청한 각 업체의 신용도와 광고비 납부실적 등을 종합하여 점수를 매겨놓고 다음과 같은 순서대로 광고를 방영하도록 조치를 취하였다.
1. 광고를 신청한 N개의 업체 중 현재 점수가 가장 높은 업체의 광고를 방영한다. 점수가 가장 높은 업체가 여럿이라면 번호가 낮은 업체를 우선으로 한다. 2. 광고가 방영된 후에는 그 업체의 점수는 0점이 되며, 그 업체의 점수를 N-1로 나눈 몫만큼 나머지 업체들에게 일정하게 분배를 하고 남은 점수는 번호가 낮은 업체부터 차례대로 1점씩 추가로 분배한다. (단, 방금 광고가 방영되고 0점이 된 업체에는 분배하지 않는다.)
광고를 신청한 업체의 수와 각 업체마다의 점수가 주어졌을 때, M번 광고를 방영할 때 방영되는 업체의 리스트를 출력하는 프로그램을 작성하시오.
입력
첫줄에 광고를 신청한 업체의 수 N(1 ≤ N ≤ 1,000)과 전체광고 방영횟수 M(1 ≤ M ≤ 1,000)이 입력으로 주어진다.
각 업체는 순서대로 1번부터 N번까지 번호가 매겨진다.
다음 줄부터 N줄에 걸쳐 1번 업체부터 차례대로 각 업체의 점수가 주어진다. 각 업체의 점수는 10,000 이하의 자연수이다.
출력
광고가 방영되는 업체의 번호를 한 줄에 하나씩 M줄에 걸쳐 순서대로 출력한다.
예제
3 4
8
12
11
2
3
1
2
출처
2014 ICT Award KOREA