#3318. 盒子与球

盒子与球

题目:盒子与球

问题描述

有编号为1,2,...,N的N个盒子。初始时,所有盒子都是空的。

接下来会按顺序出现Q个球。

Huhe会根据序列X=(X₁,X₂,...,X_Q)将这些球放入盒子中。具体规则如下:

对于第i个球:

  • 如果X_i ≥ 1:将这个球放入编号为X_i的盒子
  • 如果X_i = 0:将这个球放入当前球数最少的盒子中(若有多个,则选择编号最小的)

请确定每个球最终被放入哪个盒子。

输入格式

所有输入值均为整数。

  • 1 ≤ N ≤ 100
  • 1 ≤ Q ≤ 100
  • 0 ≤ X_i ≤ N

输入从标准输入按以下格式给出:

N Q X₁ X₂ ... X_Q

输出格式

如果第i个球被放入盒子B_i,则按以下格式输出:

B₁ B₂ ... B_Q

样例输入1

4 5
2 0 3 0 0

样例输出1

2 1 3 4 1

样例解释1

有4个盒子和5个球。初始状态所有盒子都是空的。

  1. 第一个球X₁=2:放入盒子2 → 盒子状态:[0,1,0,0]
  2. 第二个球X₂=0:放入球数最少且编号最小的盒子1 → [1,1,0,0]
  3. 第三个球X₃=3:放入盒子3 → [1,1,1,0]
  4. 第四个球X₄=0:放入盒子4 → [1,1,1,1]
  5. 第五个球X₅=0:放入盒子1 → [2,1,1,1]

因此输出顺序为:2,1,3,4,1

样例输入2

3 7
1 1 0 0 0 0 0

样例输出2

1 1 2 3 2 3 1

样例输入3

6 20
4 6 0 3 4 2 6 5 2 3 0 3 2 5 0 3 5 0 2 0

样例输出3

4 6 1 3 4 2 6 5 2 3 1 3 2 5 1 3 5 4 2 6