CF804E.The same permutation
NOI/NOI+/CTSC
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Seyyed and MoJaK are friends of Sajjad. Sajjad likes a permutation. Seyyed wants to change the permutation in a way that Sajjad won't like it. Seyyed thinks more swaps yield more probability to do that, so he makes MoJaK to perform a swap between every pair of positions (i, j), where i < j, exactly once. MoJaK doesn't like to upset Sajjad.
Given the permutation, determine whether it is possible to swap all pairs of positions so that the permutation stays the same. If it is possible find how to do that.
赛义德和莫贾克是萨贾德的朋友。萨贾德喜欢某个排列。赛义德想通过改变该排列,使其变得令萨贾德不喜欢。赛义德认为:交换次数越多,实现这一目标的概率就越大,因此他要求莫贾克对每一对位置 (i,j)(其中 i<j)恰好执行一次交换操作。但莫贾克并不想让萨贾德不开心。
给定一个排列,请判断:是否可能对所有满足 i<j 的位置对 (i,j) 都执行一次交换后,该排列仍保持不变?若可能,请给出一种实现方案。
输入格式
The first line contains single integer n (1 ≤ n ≤ 1000) — the size of the permutation.
As the permutation is not important, you can consider a__i = i, where the permutation is _a_1, _a_2, ..., a__n.
第一行包含一个整数 n(1≤n≤1000)—— 表示排列的长度。
由于排列的具体取值并不重要,你可以认为 ai=i,即该排列为 a1,a2,…,an。
输出格式
If it is not possible to swap all pairs of positions so that the permutation stays the same, print "NO",
Otherwise print "YES", then print
lines: the i-th of these lines should contain two integers a and b (a < b) — the positions where the i-th swap is performed.
如果无法通过交换所有位置对使得排列保持不变,则输出 "NO";
否则输出 "YES",然后输出
行:其中第 i 行应包含两个整数 a 和 b(满足 a < b),表示第 i 次交换发生的位置。
输入输出样例
输入#1
3
输出#1
NO
输入#2
1
输出#2
YES
输入解题思路,AI测评打分。不知道怎么写?