0123 - おみせやさん。

時間制限 3 秒 / メモリ制限 128 MB / 得点 22 / Writer ei1333 / x 3 / 統計 /


TLE
3sec
MLE
128MB
得点
22

問題

ここはお店屋さん。人気があるので、頻繁にお客さんが出入りしている(たぶん)。これらのお客さんには、それぞれ 他のお客さんと重複しないような正整数の ID が割り振られている。

私は、一定間隔で売りたくてたまらない商品 i が発作的に頭の中に浮かんでくる。この商品 i を、商品 i の値段以上のお金を所持している店内のお客さんのうち、最小のお金を持つ人 に売ることで、無駄なくお金を使ってもらい、嬉しい気持ちになる。商品 i を売られたお客さんは、必ずその商品を購入し、その商品の値段だけ所持金が減少する。

商品 i を売るべきお客さんの ID を求めて、私の仕事を効率化してね!

入力

入力は以下の形式で与えられる。

N Q
p1
p2
:
pN
Query1
Query2
:
QueryQ

1 行目には、私が売りたくなるであろう商品の種類数 N と 与えられるクエリの数 Q が与えられる。

2 行目からは N 行にかけて、商品の値段が与えられる。このうち i (1 ≦ i ≦ N)行目には、i 番目の商品の値段 pi が書かれている。

N + 2 行目からは Q 行にかけて、クエリが時系列順に与えられる。最初、店内には誰もお客さんはいない。このうち i (1 ≦ i ≦ Q)行目には i 番目のクエリ Queryi が次のいずれかの形式で与えられる。

1 ID Money
2 ID
3 Idx

先頭の数字が「1」のとき、お客さん ID が入店したことを表す。また、このお客さんは金額 Money を所持していることが分かっている。店内にいるお客さんのIDが与えられることはないが、一度店に入店し、出店したお客さんのIDが与えられることもある。

先頭の数字が「2」のとき、お客さん ID が出店したことを表す。店内にいないお客さんのIDが与えられることはない。

先頭の数字が「3」のとき、Idx (1 ≦ Idx ≦ N) 番目の商品を売ることを表す。このとき、出力項 の制約に従って解を出力する。また、商品 Idx を売ったあと、売ったお客さんの所持金が pIdx 円減少する。

制約

  • 商品の種類数: 1 ≦ N ≦ 1000
  • クエリの個数: 1 ≦ Q ≦ 5 × 105
  • 商品iの価格: 1 ≦ pi ≦ 109
  • お客さんのID: 1 ≦ ID ≦ 109
  • お客さんの所持金: 1 ≦ Money ≦ 109

出力

出力はあわせて 複数行(クエリ「3」の個数) になる。所持金が pIdx を超えるお客さんのうち、最小のお金を持つお客さんの ID を出力する。店内に所持金が同じお客さんが複数人いることが考えられるが、その場合 最小の ID を出力する。また、所持金が pIdx を超えるお客さんが存在しない場合は -1 を出力する。

入出力例

入力例1

1 5
100
1 1 100
1 2 101
1 3 101
3 1
3 1

出力例1

1
2

1, 2, 3 番目のクエリで、お金 100 を持つお客さん 1 と、お金 101 を持つお客さん 2 と、お金 102 を持つお客さん 3 が入店する。

4 番目のクエリで、値段 100 の商品を売る。お金 100 を上回り、最小のお金を所持するお客さんは 1 なので、 1 を出力する。お客さん 1 の所持金は 0 となる。

5 番目のクエリで、値段 100 の商品を売る。お金 100 を上回り、最小のお金を所持するお客さんは 2 と 3 だが、ID が小さい方なので 2 を出力する。お客さん 2 の所持金は 1 となる。

入力例2

3 10
100
1
1000002
1 1 101
1 2 1
2 1
3 1
1 1 1000001
1 3 200
3 1
3 1
3 2
3 3

出力例1

-1
3
3
2
-1

1, 2 番目のクエリで、お金 101 を持つお客さん 1 と お金 1 を持つお客さん 2 が入店する。

3 番目のクエリで、お客さん 1 が帰る。

4 番目のクエリで、値段 100 の商品を売ろうとするが、買えるお客さんはいないので -1 を出力する。

5 番目のクエリで、お客さん 1 がたくさんお金を持って戻ってくる。

6 番目のクエリで、お金 200 を持つお客さん 3 が入店する。

7 番目のクエリで、値段 100 の商品を売る。解を満たすお客さんは、ID 3 なので 3 を出力する。お客さん 3 の所持金は 100 となる。

8 番目のクエリでも、値段 100 の商品を売る。解を満たすお客さんは、ID 3 なので 3 を出力する。

9 番目のクエリで、値段 1 の商品を売る。解を満たすお客さんは、ID 2 なので 2 を出力する。

10 番目のクエリで、値段 1000002 の商品を売るが、買えるお客さんはいないので -1 を出力する。

お客さん 1 が可哀想な入力例だった。


解説