AT_abc410_b [ABC410B] Reverse Proxy
Description
$ 1,2,\dots,N $ の番号が付いた $ N $ 個の箱があります。最初は全ての箱が空です。
これから $ Q $ 個のボールが順番にやってきます。
高橋君は、数列 $ X=(X_1,X_2,\dots,X_Q) $ に従ってボールを箱に入れます。
具体的には、 $ i $ 番目にやってきたボールに次の処理を行います。
- $ X_i \ge 1 $ である場合 : このボールを、箱 $ X_i $ に入れる。
- $ X_i = 0 $ である場合 : このボールを、現在入っているボールが最も少ない箱のうち番号が最小である箱に入れる。
それぞれのボールをどの箱に入れたかを求めてください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ Q $ $ X_1 $ $ X_2 $ $ \dots $ $ X_Q $
Output Format
$ i $ 番目にやってきたボールを箱 $ B_i $ に入れたとき、次の形式に従って出力せよ。
> $ B_1 $ $ B_2 $ $ \dots $ $ B_Q $
Explanation/Hint
### Sample Explanation 1
箱が $ 4 $ つあり、ボールは $ 5 $ 個やってきます。
- 最初、全ての箱は空です。
- 各箱に入っているボールの数は箱 $ 1 $ から順に $ 0,0,0,0 $ 個です。
- $ X_1=2 $ なので、 $ 1 $ 番目にやってきたボールを箱 $ 2 $ に入れます。
- 各箱に入っているボールの数は箱 $ 1 $ から順に $ 0,1,0,0 $ 個となります。
- $ X_2=0 $ なので、 $ 2 $ 番目にやってきたボールを現在入っているボールが最も少ない箱のうち番号が最小である箱である箱 $ 1 $ に入れます。
- 各箱に入っているボールの数は箱 $ 1 $ から順に $ 1,1,0,0 $ 個となります。
- $ X_3=3 $ なので、 $ 3 $ 番目にやってきたボールを箱 $ 3 $ に入れます。
- 各箱に入っているボールの数は箱 $ 1 $ から順に $ 1,1,1,0 $ 個となります。
- $ X_4=0 $ なので、 $ 4 $ 番目にやってきたボールを現在入っているボールが最も少ない箱のうち番号が最小である箱である箱 $ 4 $ に入れます。
- 各箱に入っているボールの数は箱 $ 1 $ から順に $ 1,1,1,1 $ 個となります。
- $ X_5=0 $ なので、 $ 5 $ 番目にやってきたボールを現在入っているボールが最も少ない箱のうち番号が最小である箱である箱 $ 1 $ に入れます。
- 各箱に入っているボールの数は箱 $ 1 $ から順に $ 2,1,1,1 $ 個となります。
各ボールを、やってきた順に箱 $ 2,1,3,4,1 $ に入れました。よって、 `2 1 3 4 1` と出力します。
### Constraints
- 入力は全て整数
- $ 1 \le N \le 100 $
- $ 1 \le Q \le 100 $
- $ 0 \le X_i \le N $