atcoder#DWACON6THPRELIMSD. Arrangement

Arrangement

题目描述

ニワンゴ君は N N 枚のカードを持っています。カードには 1,2,,N 1,2,\ldots,N と番号が振られています。 ニワンゴ君はこれらのカードを一列に並べることにしました。

ニワンゴ君は以下の N N 個の条件の全てを満たすカードの並べ方が存在するかどうかを知りたいです。 ニワンゴ君のためにそのような並べ方が存在するかどうかを判定し、存在する場合は辞書順最小の並べ方を求めてください。

  • カード 1 1 の右隣のカードは(存在するならば) a1 a_1 でない
  • カード 2 2 の右隣のカードは(存在するならば) a2 a_2 でない
  • \vdots
  • カード N N の右隣のカードは(存在するならば) aN a_N でない

输入格式

入力は以下の形式で標準入力から与えられる。

N N a1 a_1 a2 a_2 \ldots aN a_N

输出格式

条件を満たす並べ方が存在しない場合は -1 を、存在する場合は条件を満たす辞書順最小のカードの並びを下記のフォーマットで出力せよ。 ここで、bi b_i は左から i i 番目のカードの番号である。

b1 b_1 b2 b_2 \ldots bN b_N

题目大意

给定有 NN 个数的数组 aa,要求构造一种 11NN 的排列,使得 aia_i 不在第 ii 个数的右侧。如果无解输出 1-1,多解输出字典序最小的排列。

4
2 3 4 1
1 3 2 4
2
2 1
-1
13
2 3 4 5 6 7 8 9 10 11 12 13 12
1 3 2 4 6 5 7 9 8 10 12 11 13

提示

制約

  • 2  N  105 2\ \leq\ N\ \leq\ 10^{5}
  • 1  ai  N 1\ \leq\ a_i\ \leq\ N
  • ai  i a_i\ \neq\ i

Sample Explanation 1

- (1,3,2,4) (1,3,2,4) よりも辞書順で小さい並べ方は (1,2,3,4) (1,2,3,4) がありますが、これはカード 1 1 の右隣のカードは 2 2 でない、という条件に反するため不適切です。

Sample Explanation 2

- 条件を満たす並べ方が存在しない場合は -1 を出力してください。