CF2037C.Superultra's Favorite Permutation
入门
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Superultra,一只小红熊猫,非常渴望获得原石。在他的梦中,一个声音告诉他,必须解决以下任务才能获得终身原石。请你帮助 Superultra!
构造一个长度为 n 的排列 p,使得对于所有 1≤i≤n−1,都有 pi+pi+1 是合数。如果无法构造,输出 −1。
一个长度为 n 的排列是一个包含 1 到 n 的 n 个互不相同整数的数组,顺序任意。例如,[2,3,1,5,4] 是一个排列,但 [1,2,2] 不是排列(2 出现了两次),[1,3,4] 也不是排列(n=3 但数组中有 4)。
一个整数 x 是合数,当且仅当它除了 1 和 x 之外还有其他约数。例如,4 是合数,因为 2 是它的约数。
输入格式
第一行包含一个整数 t(1≤t≤104),表示测试用例的数量。
每个测试用例包含一个整数 n(2≤n≤2×105),表示排列的长度。
保证所有测试用例中 n 的总和不超过 2×105。
输出格式
对于每个测试用例,如果无法构造满足条件的排列,输出 −1。否则,输出 n 个整数 p1,p2,…,pn,表示构造出的排列。
输入输出样例
输入#1
2 3 8
输出#1
-1 1 8 7 3 6 2 4 5
说明/提示
在第一个样例中,可以证明所有长度为 3 的排列都包含一对相邻元素之和为质数。例如,在排列 [2,3,1] 中,2+3=5 是质数。
在第二个样例中,可以验证样例输出是正确的,因为 1+8、8+7、7+3、3+6、6+2、2+4 和 4+5 都是合数。当然,也可能存在其他正确的构造方式。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?