QOJ.ac

QOJ

Time Limit: 1.0 s Memory Limit: 256 MB Total points: 100 Hackable ✓

#16113. Merticulous Manipulation

统计

神奇的 Maximillian 是一位以其压轴戏“完美排列”而闻名的舞台魔术师。他声称可以将 $N$ 张编号为 $1$ 到 $N$ 的牌排列成观众要求的任意排列 $P$。

作为他的学徒,你知道他的秘密:这是一个精确的 $N$ 步过程。魔术从空牌堆开始。对于每一张牌 $i$(从 $1$ 到 $N$),按顺序执行以下操作:

  1. Maximillian 将牌 $i$ 放在牌堆顶部。
  2. 他立即向你索要一个秘密数字 $x_i$(其中 $1 \le x_i \le i$)。他取出牌堆顶部的 $x_i$ 张牌,并按顺序将它们移到牌堆底部。例如,如果牌堆是 $[3, 1, 2]$(从上到下),且 $x = 2$,则牌堆变为 $[2, 3, 1]$。

今晚,一位观众要求最终的牌堆顺序为特定的排列 $P$,其中 $P_1$ 是最顶部的牌,$P_N$ 是最底部的牌。

Maximillian 正在舞台上看着你。你必须提供正确的切牌数字序列 $x_1, x_2, \dots, x_N$,以产生排列 $P$ 并拯救演出。

输入格式

第一行包含一个整数 $N$ ($1 \le N \le 2 \cdot 10^5$),表示牌的数量。

第二行包含 $N$ 个整数 $P_1, P_2, \dots, P_N$ ($1 \le P_i \le N$),表示观众要求的排列。

输出格式

输出一行,包含 $N$ 个整数,即切牌数字序列 $x_1, x_2, \dots, x_N$。

样例

输入 1

5
1 2 3 4 5

输出 1

1 1 1 1 1

输入 2

4
4 1 3 2

输出 2

1 2 2 4

说明

对于第一个样例,每次切牌都只是将最顶部的牌取出并放到最底部。

对于第二个样例,每次切牌后的牌堆状态如下:

  • 第一次切牌后:$[1]$
  • 第二次切牌后:$[2, 1]$
  • 第三次切牌后:$[1, 3, 2]$
  • 第四次切牌后:$[4, 1, 3, 2]$

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.