#P1440. Orange与他的水果朋友们

Orange与他的水果朋友们

Orange与他的水果朋友们

题目描述

芝士橙子... 芝士苹果... 芝士香蕉...

Orange与他的水果朋友们在玩一个平台跳越游戏,一共有 n1n-1 位水果朋友和 nn 个平台。最开始,每个水果都会在一个自己的平台上,且保证平台上只有自己。为了简化题意,我们用一个序列 aia_i 来表示这些水果的位置,aia_i 表示第 ii 个平台上的水果的编号(不同水果的编号是不一样的),若 ai=0a_i=0,则表示这个平台上是空的(保证只会有一个这样的平台)。

接下来的 n1n-1 秒,水果们会进行平台跳越,第 ii 秒,编号为 ii 的水果会跳到空的平台上,这也意味着它自身所在的平台会成为新的空平台。

现在Orange想知道,n1n-1 秒之后,每个平台上的水果都是谁?

输入格式

输入第一行为一个整数 nn,表示平台数量/游戏时间/水果数量。 输入第二行为 nn 个整数 aia_i

数据范围

2n1062 \le n \le 10^6 aia_i 保证为一个 0n10 \sim n-1 的排列。

输出格式

输出一个 0n10 \sim n-1 的排列 aia_i',表示 n1n-1 秒之后第 ii 个平台上的水果的编号为 aia_i'

样例 #1

样例输入 #1

5
1 2 0 3 4

样例输出 #1

2 3 1 4 0

提示

样例解释

最开始时:1 2 0 3 4 第一秒后:0 2 1 3 4 (编号1的水果与空位0交换) 第二秒后:2 0 1 3 4 (编号2的水果与空位0交换) 第三秒后:2 3 1 0 4 (编号3的水果与空位0交换) 第四秒后:2 3 1 4 0 (编号4的水果与空位0交换) 因此每个平台的状态为 2 3 1 4 0