CF2188A.Divisible Permutation
入门
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个整数 n。请构造一个长度为 n 的排列 p,使其满足以下条件:
- 对于每个 1≤i≤n−1,都有 ∣pi−pi+1∣ 能被 i 整除。
可以证明,在本题的约束条件下,总是存在这样的一个排列。
排列指的是长度为 n、由 1 到 n 的 n 个互不相同整数按任意顺序组成的数组。例如,[2,3,1,5,4] 是一个排列,但 [1,2,2] 不是排列(2 在数组中出现了两次),[1,3,4] 也不是排列(n=3 时数组中出现了 4)。
输入格式
每个测试包含多组测试数据。第一行为测试用例个数 t(1≤t≤100)。接下来是 t 组测试用例的描述。
每个测试用例仅一行,包含一个整数 n(2≤n≤100)——表示要构造排列 p 的长度。
输出格式
对于每组测试用例,输出 n 个整数 p1,p2,…,pn(1≤pi≤n,所有 pi 互不相同),即你构造的排列。
若有多组满足条件的排列,输出任意一组均可。
输入输出样例
输入#1
2 2 3
输出#1
1 2 2 3 1
说明/提示
在第一个测试用例中,p=[1,2] 满足条件,因为 ∣p1−p2∣=∣1−2∣=1,能被 1 整除。
在第二个测试用例中,p=[2,3,1] 满足条件,因为:
- ∣p1−p2∣=∣2−3∣=1,能被 1 整除;
- ∣p2−p3∣=∣3−1∣=2,能被 2 整除。