#SM08L01P06. SM.08.L01.P06.集合(longer)

SM.08.L01.P06.集合(longer)

题目描述

设 X 是有 N 个不相同整数的集合。把 X 中每个数用两次,排成一个长度为 2N 的数列 S ,要求 S 中任意一个数 i 与另一个与它相同的 i 之间正好间隔 i 个数字。

输入格式

第 1 行一个整数 N ( I ≤ N ≤ 8 );

第 2 行有 N 个整数(每个数不相同,并且在 0 到 16 之间),表示集合中的数。

输出格式

输出一个满足上面要求的长度为 2N 的数列;若有多个解,输出字典序最小的;若没有解,输出 -1 。

样例

3
1 2 3
2 3 1 2 1 3
8
8 0 12 6 2 4 3 13
12 13 2 8 3 2 4 6 0 0 4 8 12 6 13
5
0 1 2 3 4
0 0 2 3 4 2 1 3 1 4