AT_abc410_b [ABC410B] Reverse Proxy

题目描述

有 $N$ 个空箱子,编号从 $1$ 到 $N$。 接下来会按顺序送来 $Q$ 个球。\ 高桥会依据序列 $X=(X_1,X_2,\cdots,X_Q)$ 把球放入箱子。\ 对于第 $i$ 个球: - $X_i\ge1$:把球放入 $X_i$ 号箱子里。 - $X_i=0$:把球放入装有球最少的箱子中编号最小的箱子里。 找出每个球被放入了哪个箱子。

输入格式

第一行两个整数 $N,Q(1\le N,Q\le 100)$。\ 第二行 $Q$ 个整数 $X_1,X_2,\cdots,X_Q(0\le X_i\le N)$。

输出格式

一行 $Q$ 个整数,第 $i$ 个数字为第 $i$ 个球最终被放入的箱子编号。

说明/提示

**样例 1 解释** 共有 $4$ 个箱子,$5$ 个球。 - 初始时,所有箱子为空。箱子中装的球数为 $(0,0,0,0)$。 - $X_1=2$,所以把 $1$ 号球放入 $2$ 号箱子。箱子中装的球数变为 $(0,1,0,0)$。 - $X_2=0$,所以把 $2$ 号球放入当前装有球最少的箱子中编号最小的箱子,即 $1$ 号箱子。箱子中装的球数变为 $(1,1,0,0)$。 - $X_3=3$,所以把 $3$ 号球放入 $3$ 号箱子。箱子中装的球数变为 $(1,1,1,0)$。 - $X_4=0$,所以把 $4$ 号球放入当前装有球最少的箱子中编号最小的箱子,即 $4$ 号箱子。箱子中装的球数变为 $(1,1,1,1)$。 - $X_5=0$,所以把 $5$ 号球放入当前装有球最少的箱子中编号最小的箱子,即 $1$ 号箱子。箱子中装的球数变为 $(2,1,1,1)$。 球依次被放入了箱子 $2,1,3,4,1$,故输出此序列。 By @[chenxi2009](/user/1020063)