#agc046e. [agc046_e]Permutation Cover
[agc046_e]Permutation Cover
問題文
整数 と整数 が与えられます。以下を満たす数列 が存在するか判定し、存在する場合は辞書順最小のものを求めてください。
- のすべての項は 以上 以下の整数である
- 各 に対し、 は を 個含む
- の各項について、その項を含むある長さ の連続する部分列が存在し、 の並び替えになっている
制約
- 入力はすべて整数である
入力
入力は以下の形式で標準入力から与えられる。
出力
条件を満たす数列が存在しない場合、-1
を出力せよ。 そうでない場合、条件を満たす辞書順最小の数列を出力せよ。
入力例 1
3
2 4 3
出力例 1
2 1 3 2 2 3 1 2 3
例えば、 項目の は、 項目からなる部分列 に含まれます。
入力例 2
4
3 2 3 2
出力例 2
1 2 3 4 1 3 1 2 4 3
入力例 3
5
3 1 4 1 5
出力例 3
-1