#CF2037C. 超级极品的优选排列
超级极品的优选排列
C. 超级极品的优选排列
每次测试时间限制:2 秒
每次测试内存限制:256 兆字节
超级极品,一只小熊猫,非常渴望得到原石。在梦中,有一个声音告诉他,他必须解决以下任务才能获得终身原石供应。请帮助超级极品!
构造一个长度为 的排列 ,使得对于所有 , 都是合数。如果不可能构造,则输出 。
∗ 排列
长度为 的排列是由 个从 到 的互不相同整数按任意顺序组成的数组。例如, 是一个排列,但 不是排列( 在数组中出现两次), 也不是排列( 但数组中包含 )。
† 合数
一个整数 是合数,如果它有除 和 之外的其他因数。例如, 是合数,因为 是其因数。
输入
第一行包含 ()—— 测试用例的数量。
每个测试用例包含一个整数 ()—— 排列的长度。
保证所有测试用例的 之和不超过 。
输出
对于每个测试用例,如果不可能构造排列 ,则在新行输出 。否则,在新行输出 个整数 。
示例
输入:
2
3
8
输出:
-1
1 8 7 3 6 2 4 5
注意
在第一个示例中,可以证明所有长度为 的排列都存在某两个相邻元素的和是素数。例如,在排列 中, 是素数。
在第二个示例中,可以验证给出的输出是正确的,因为 ,,,,,, 都是合数。也可能存在其他正确的构造。