iCow

시간 제한1초메모리 제한128 MB

요약
평점이 가장 높은 곡을 고르고 그 곡의 평점을 0으로 만든 뒤 점수를 나머지 곡에 나눠 주는 과정을 T번 반복한다.
난이도

보통10점 중 4점

유형
시뮬레이션, 구현, 그리디
정답자
아직 제출이 없습니다

문제

농부 John은 끝없는 농사일에 지쳐, 새 MP3 플레이어 iCow로 시장에 도전하기로 했다. iCow는 NN개의 노래(1≤N≤10001 \le N \le 1000)를 저장하며, 노래에는 11번부터 NN번까지 번호가 매겨져 있다. 재생 순서는 John이 직접 만든 다음 알고리즘에 따라 "섞인" 순서로 정해진다.

  • 각 노래 ii는 초기 평점 RiR_i를 가진다 (1≤Ri≤100001 \le R_i \le 10000).
  • 다음에 재생할 노래는 항상 평점이 가장 높은 노래이다. 평점이 같은 노래가 둘 이상이면 그중 번호가 가장 작은 노래를 고른다.
  • 한 노래가 재생되면 그 노래의 평점은 00이 되고, 가지고 있던 점수를 나머지 N−1N-1개의 노래에 균등하게 나누어 준다.
  • 점수를 균등하게 나눌 수 없으면(즉 N−1N-1로 나누어떨어지지 않으면), 남는 점수를 번호가 앞선 노래부터(R1R_1, R2R_2, ... 순서로, 단 방금 재생된 노래는 제외) 한 점씩 나누어 주며, 남는 점수가 모두 사라질 때까지 계속한다.
  • 다음 노래가 재생된 뒤에는 갱신된 평점으로 이 과정을 반복한다.

iCow가 재생하는 처음 TT개의 노래(1≤T≤10001 \le T \le 1000)를 구하여라.

입력

  • 첫째 줄: 공백으로 구분된 두 정수 NN과 TT.
  • 둘째 줄부터 N+1N+1째 줄까지: i+1i+1째 줄에는 정수 RiR_i가 하나씩 주어진다.

출력

  • 첫째 줄부터 TT째 줄까지: ii째 줄에는 iCow가 재생하는 ii번째 노래의 번호를 출력한다.

예제1

  1. 예제 1

    입력
    3 4
    10
    8
    11
    
    예상 출력
    3
    1
    2
    3