CF1818B.Indivisible
普及/提高-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You're given a positive integer n.
Find a permutation a1,a2,…,an such that for any 1≤l<r≤n, the sum al+al+1+⋯+ar is not divisible by r−l+1.
A permutation of length n is an array consisting of n distinct integers from 1 to n in arbitrary order. For example, [2,3,1,5,4] is a permutation, but [1,2,2] is not a permutation (2 appears twice in the array), and [1,3,4] is also not a permutation (n=3 but there is 4 in the array).
给你一个正整数 n。
请构造一个排列 a1,a2,…,an,使得对任意满足 1≤l<r≤n 的区间 [l,r],其元素和 al+al+1+⋯+ar 均不能被该区间的长度 r−l+1 整除。
长度为 n 的排列是指由 1 到 n 这 n 个互不相同的整数以任意顺序组成的数组。例如,[2,3,1,5,4] 是一个排列,但 [1,2,2] 不是排列(数字 2 在数组中出现了两次),[1,3,4] 也不是排列(此时 n=3,但数组中包含了 4)。
输入格式
Each test contains multiple test cases. The first line contains the number of test cases t (1≤t≤100). Description of the test cases follows.
The first line of each test case contain a single integer n (1≤n≤100) — the size of the desired permutation.
每个测试包含多个测试用例。第一行包含测试用例的数量 t(1≤t≤100)。随后是各测试用例的描述。
每个测试用例的第一行包含一个整数 n(1≤n≤100)—— 所需排列的大小。
输出格式
For each test case, if there is no such permutation print −1.
Otherwise, print n distinct integers p1,p2,…,pn (1≤pi≤n) — a permutation satisfying the condition described in the statement.
If there are multiple solutions, print any.
对于每个测试用例,若不存在满足条件的排列,则输出 −1。
否则,输出 n 个互不相同的整数 p1,p2,…,pn(其中 1≤pi≤n),即一个满足题目描述条件的排列。
若存在多个解,输出任意一个即可。
输入输出样例
输入#1
3 1 2 3
输出#1
1 1 2 -1
说明/提示
In the first example, there are no valid pairs of l<r, meaning that the condition is true for all such pairs.
In the second example, the only valid pair is l=1 and r=2, for which a1+a2=1+2=3 is not divisible by r−l+1=2.
in the third example, for l=1 and r=3 the sum a1+a2+a3 is always 6, which is divisible by 3.
在第一个例子中,不存在满足 l<r 的有效数对,这意味着该条件对所有此类数对均成立。
在第二个例子中,唯一有效的数对是 l=1 和 r=2,此时 a1+a2=1+2=3 不能被 r−l+1=2 整除。
在第三个例子中,当 l=1 且 r=3 时,和 a1+a2+a3 恒为 6,而 6 可被 3 整除。
输入解题思路,AI测评打分。不知道怎么写?