A6389 | 「SHOI2013」发牌
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
在一些扑克游戏里,如德州扑克,发牌是有讲究的。一般称呼专业的发牌手为荷官。荷官在发牌前,先要销牌(burn card)。所谓销牌,就是把当前在牌库顶的那一张牌移动到牌库底,它用来防止玩家猜牌而影响游戏。
假设一开始,荷官拿出了一副新牌,这副牌有 $N$ 张不同的牌,编号依次为 $1,\dots,N$。
由于是新牌,所以牌是按照顺序排好的,从牌库顶开始,依次为 $1,\dots,N$,$N$ 号牌在牌库底。
为了发完所有的牌,荷官会进行 $N$ 次发牌操作,在第 $i$ 次发牌之前,他会连续进行 $R_i$ 次销牌操作,$R_i$ 由输入给定。请问最后玩家拿到这副牌的顺序是什么样的?
举个例子,假设 $N = 4$,则一开始的时候,牌库中牌的构成顺序为 $\{1,2,3,4\}$。
假设 $R_1=2$,则荷官应该连销两次牌,将 $1$ 和 $2$ 放入牌库底,再将 $3$ 发给玩家。目前牌库中的牌顺序为 $\{4, 1, 2\}$。
假设 $R_2=0$,荷官不需要销牌,直接将 $4$ 发给玩家,目前牌库中的牌顺序为 $\{1,2\}$。
假设 $R_3=3$,则荷官依次销去了 $1,2,1$,再将 $2$ 发给了玩家。目前牌库仅剩下一张牌 $1$。
假设 $R_4=2$,荷官在重复销去两次 $1$ 之后,还是将 $1$ 发给了玩家,这是因为 $1$ 是牌库中唯一的一张牌。
假设一开始,荷官拿出了一副新牌,这副牌有 $N$ 张不同的牌,编号依次为 $1,\dots,N$。
由于是新牌,所以牌是按照顺序排好的,从牌库顶开始,依次为 $1,\dots,N$,$N$ 号牌在牌库底。
为了发完所有的牌,荷官会进行 $N$ 次发牌操作,在第 $i$ 次发牌之前,他会连续进行 $R_i$ 次销牌操作,$R_i$ 由输入给定。请问最后玩家拿到这副牌的顺序是什么样的?
举个例子,假设 $N = 4$,则一开始的时候,牌库中牌的构成顺序为 $\{1,2,3,4\}$。
假设 $R_1=2$,则荷官应该连销两次牌,将 $1$ 和 $2$ 放入牌库底,再将 $3$ 发给玩家。目前牌库中的牌顺序为 $\{4, 1, 2\}$。
假设 $R_2=0$,荷官不需要销牌,直接将 $4$ 发给玩家,目前牌库中的牌顺序为 $\{1,2\}$。
假设 $R_3=3$,则荷官依次销去了 $1,2,1$,再将 $2$ 发给了玩家。目前牌库仅剩下一张牌 $1$。
假设 $R_4=2$,荷官在重复销去两次 $1$ 之后,还是将 $1$ 发给了玩家,这是因为 $1$ 是牌库中唯一的一张牌。
输入格式
第 $1$ 行,一个整数 $N$,表示牌的数量。
以下 $N$ 行,每行一个整数 $R_i$。
以下 $N$ 行,每行一个整数 $R_i$。
输出格式
第 $i$ 行只有一个整数,表示玩家收到的第 $i$ 张牌的编号。
输入输出样例
输入 #1
4 2 0 3 2
输出 #1
3 4 2 1
$0 \le R_i < N$
|数据点|规模|
|:-:|:-:|
|$1$|$N = 5000$|
|$2$|$N = 10^4$|
|$3$|$N = 5 \times 10^4$|
|$4$|$N = 10^5$|
|$5$|$N = 2 \times 10^5$|
|$6$|$N = 3 \times 10^5$|
|$7$|$N = 4 \times 10^5$|
|$8$|$N = 5 \times 10^5$|
|$9$|$N = 6 \times 10^5$|
|$10$|$N = 7 \times 10^5$|
|数据点|规模|
|:-:|:-:|
|$1$|$N = 5000$|
|$2$|$N = 10^4$|
|$3$|$N = 5 \times 10^4$|
|$4$|$N = 10^5$|
|$5$|$N = 2 \times 10^5$|
|$6$|$N = 3 \times 10^5$|
|$7$|$N = 4 \times 10^5$|
|$8$|$N = 5 \times 10^5$|
|$9$|$N = 6 \times 10^5$|
|$10$|$N = 7 \times 10^5$|
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?