#48. Jagged Swaps
Jagged Swaps
给定一个大小为 的排列 。你可以进行如下操作:
- 选择一个下标 (),满足 且 ;
- 交换 与 。
请判断:经过有限次操作后,是否可能将该排列排序为非递减序列(即变为 )。
排列的定义
排列是一个长度为 的数组,包含从 到 的 个互不相同的整数,顺序任意。 例如, 是排列;但 不是( 重复出现), 也不是( 却出现了 )。
输入格式
输入包含多组测试用例。第一行一个整数 (),表示测试用例数量。
每个测试用例:
- 第一行一个整数 (),表示排列大小;
- 第二行 个整数 (),表示排列 。
输出格式
对每个测试用例输出一行:
- 若可以通过若干次操作将排列排序,输出
YES; - 否则输出
NO。
说明:原题允许任意大小写,但为适配固定判题平台,本题要求严格输出大写 YES 或 NO。
样例
输入
6
3
1 2 3
5
1 3 2 5 4
5
5 4 3 2 1
3
3 1 2
4
2 3 1 4
5
5 1 2 3 4
输出
YES
YES
NO
NO
NO
NO
相关
在以下作业中: