R大学の2D好きの人たち (2DRespecters)は、A津大学で開催されるプログラミングの練習合宿に参加する。 この練習合宿では、参加者たちが自作のプログラミング問題を持ち寄り、練習に用いる。
2DRespectersも、いくつかの問題を作成することになった。 しかし、合宿の3日前になっても、まだ、B問題が完成していなかった。 最初のB問題の担当者が作成した問題は、担当者が問題の制約を難しくし過ぎてしまったため、C問題以降にまわされてしまったのだ。 そして、簡単すぎても、難しすぎてもいけない、微妙な難易度の調整が必要とされるB問題は、誰もが手を付けたがらなかった。 それ以来、B問題担当者の椅子は空席のままである。
合宿3日前になって、遂に、この問題を解決するために、2DRespecters期待のホープが立ち上がった。 だが、彼は、B問題を作成する気がない。 彼は、自分でB問題を作成したくないので、B問題の作成担当を他者に押し付ける手法を考え出したのだ。 彼の手法は、表面上、B問題の作成担当者を平等に決定する。
彼の手法は、以下の通りである。
しかし、彼の手法には、以下のような裏がある。
申請者は、自分より前の申請のみを考慮し、申請の時点で自分がB問題作成担当者にならないような最小の作業時間を申請するものとする。 申請の時点で、申請者がB問題作成担当者にならないような報告ができない場合は、嘘だとばれないような最大の作業時間を申請する。
各個人の担当する問題難易度のリストが申請順に与えられたとき、誰がB問題作成担当者になるかを求めるプログラムを作成せよ。 ホープの彼の申請順番は、一番最後である。
なお、本問題はフィクションであり、本問題の作成の経緯とは一切の関係がない。
入力は、複数のデータセットからなり、データセットの終わりは、半角スペースで区切られた0が二つだけを含む行で表される。
データセットの総数は40以下である。
データセットの1行目では、整数n(2 ≤ n ≤ 100 1,000)と整数m(1 ≤ m ≤ 1,000)が半角スペース区切りで与えられる。
データセットの2行目では、整数a_1, a_2, ..., a_n(1 ≤ a_i ≤ 1,000, 1 ≤ i ≤ n)が半角スペース区切りで与えられる。
1行目のnとmは、それぞれ、申請者の数と問題の作業可能時間を表す。 2行目では、申請順に並べられた問題難易度のリストが与えられており、a_iは、問題の難易度を表す。
それぞれのデータセットごとに、B問題作成担当者の申請順番を1行で出力せよ。
3 100 3 7 4 5 24 4 6 12 3 8 5 1 1 1 2 2 3 0 0
2 4 5