3665 iCow

Last-modified: 2012-10-25 (木) 14:20:12

原文


時間制限:1000ミリ秒
メモリ制限:65536KB

問題

農場での終わりのない労働に疲れてしまったので、農夫ジョンは新iCowでMP3プレーヤー市場にのりだすことに決めました。iCowはMP3プレーヤで曲iからNまでのN曲が入っており、ジョンが考案したアルゴリズムにしたがって"シャッフル"された順に再生されます。

  • 各曲iは初期レートRi(1 ≤ Ri ≤ 10,000)を持っている。
  • 次に再生される曲は最も高いレートの曲である(2つ以上の曲が同じ最高レートならインデックスの小さいものが再生される)。
  • 再生されたあとはその曲のレートは0にセットされ、その分のレートはその曲以外のN-1曲に公平に分配される。
  • もしレートが公平に分配できない時は(つまりレートがN-1で割り切れないなら)、リストの
    はじめの方の曲(つまりR1,R2,..etc -- ただし今再生された曲はのぞく)から点がなくなるまで1点ずつ
    残りの点が与えられていく。

このプロセスは次の曲が再生されたあともまた次のレーティングが割り振られる、というふうに繰り返されます。

iCowで再生される最初のT (1 ≤ T ≤ 1000)曲を求めてください。

入力

1行目: スペースで区切られた2つの整数NとT
2~N+1行目: i+1行目は整数が1つ: Ri

出力

1~T行目: i行目はiCowで再生されるi番目の曲

入力の例

3 4
10
8
11

出力の例

3
1
2
3

出典

USACO 2008 January Bronze