CF1541A Pretty Permutations

题目描述

有 $n$ 只猫排成一行,编号从 $1$ 到 $n$,第 $i$ 只猫位于位置 $i$。它们厌倦了一整天都在原地打转,所以它们想要重新排列自己,使得没有一只猫在原来的位置上。它们又很懒,所以希望移动的总距离最小。请帮助它们决定重新排列后每个位置应该是哪只猫。 例如,如果有 $3$ 只猫,$[3, 1, 2]$ 是一个合法的重新排列。没有一只猫在原来的位置上。猫 $1$ 向右移动了 $1$ 个位置,猫 $2$ 向右移动了 $1$ 个位置,猫 $3$ 向左移动了 $2$ 个位置,总移动距离为 $1 + 1 + 2 = 4$。

输入格式

第一行包含一个整数 $t$($1 \leq t \leq 100$)——表示测试用例的数量。接下来有 $t$ 个测试用例。 每个测试用例的第一行包含一个整数 $n$($2 \leq n \leq 100$)——表示猫的数量。 可以保证在题目给定的约束下,总是存在满足条件的答案。

输出格式

输出 $t$ 行,每行对应一个测试用例的答案。每个答案包含 $n$ 个整数,表示一个满足条件且总移动距离最小的排列。如果有多个答案,输出任意一个即可。

说明/提示

对于第一个测试用例,只有一种满足条件的排列:[2, 1]。 第二个测试用例在题目描述中已经给出。另一个可能的答案是 [2, 3, 1]。 由 ChatGPT 4.1 翻译