#P3098. [USACO13DEC] The Bessie Shuffle G
[USACO13DEC] The Bessie Shuffle G
Description
贝西有一种独门的洗牌方法,称为 A 类洗牌法;
A 类洗牌法的具体过程:将一堆共 ()张从上到下编号 的纸牌,从上到下第 张牌洗到位置 。
例如,,则执行一次 A 类洗牌法后,从上到下将变为 ,即牌 放到位置 ,牌 放到位置 ,牌 放到位置 。
贝西现在要练习另外一种洗牌方法,称为 B 类洗牌法。
B 类洗牌法的具体过程:
有一堆 ()张编号为 的牌,并按从上到下 到 的顺序堆放。另有一个牌堆用来辅助洗牌,称为临时堆,开始时为空。
- 将最上面 张牌进行一次 A 类洗牌法;
- 将最上面的一张牌放到临时堆的最上方;
- 重复前两个操作,直到原先的堆没有牌为止。
以上过程中,当原先堆的牌不足 张的时候,将不进行 A 类洗牌法,而是将最上面的牌依次放到临时堆上。
给定 和排列 。现在有 ()个询问,请求出对其做一次 B 类洗牌法后临时堆中 位置上的牌的编号。
的数据中,。
Input Format
-
第 行:一行包含 、 和 ,用空格分隔。
-
第 行至第 行:第 行表示在贝西洗牌中,第 张牌距顶部的位置 。
-
第 行至第 行:第 行包含一个整数
对于第 个查询。你需要计算从顶部起第 个位置 的卡片上的编号。
Output Format
- 第 行至第 行:在第 行,打印一个整数,表示从顶部开始第 张牌的编号。
5 3 5
3
1
2
1
2
3
4
5
4
5
3
1
2
Hint
贝西的五张牌刚开始顺序为 [1, 2, 3, 4, 5]。她一次洗三张牌,效果是将第一张牌放到底部。以上五个问题询问了每一张牌的位置。
洗牌的顺序是:
[1, 2, 3, 4, 5] -> [2, 3, 1, 4, 5] (将2正面向下放置)
[3, 1, 4, 5] -> [1, 4, 3, 5] (将1正面向下放置)
[4, 3, 5] -> [3, 5, 4] (将3正面向下放置)
[5, 4] (将5正面向下放置)
[4] (将4正面向下放置)
这就形成了最终的顺序:[4, 5, 3, 1, 2]
京公网安备 11011102002149号