#ATarc110c. [ARC110C] Exoswap
[ARC110C] Exoswap
题目描述
有一个由 组成的排列数列 。
你需要对 进行以下 种操作,每种操作恰好各进行一次,顺序可以任意。
-
交换 和
-
交换 和
-
交换 和
请通过合理安排操作顺序,将 排成升序。如果无法做到,请输出 。
输入格式
输入通过标准输入给出,格式如下:
输出格式
如果无论如何都无法将 排成升序,请输出 。
如果可以将 排成升序,请输出一种操作顺序,共 行。第 行输出 ,表示第 次操作是交换 和 。
如果存在多种可行的操作顺序,输出任意一种均可。
样例 1
输入
5
2 4 1 5 3
输出
4
2
3
1
样例 2
输入
5
5 4 3 2 1
输出
-1
说明/提示
限制条件
- 输入均为整数
- 是 的一个排列
样例解释 1
以下操作顺序可以将 排成升序:
- 首先交换 和 ,此时 变为
- 接着交换 和 ,此时 变为
- 然后交换 和 ,此时 变为
- 最后交换 和 ,此时 变为
由 ChatGPT 4.1 翻译