#968. K-交换
K-交换
题目描述
给定一个长度为 的序列 以及一个整数 。
你可以执行以下操作任意次(包括 次):
- 选择一个满足 的整数 ,交换 和 的值。
请判断是否可以通过上述操作将序列 变为升序(非降序)排列。
输入格式
第一行包含两个正整数 和 —— 分别表示序列的长度和交换的间隔。
第二行包含 个正整数 —— 表示序列 的元素。
输出格式
如果可以通过操作使序列 变为升序排列,输出 Yes;否则输出 No。
样例输入 1
5 2
3 4 1 3 4
样例输出 1
Yes
样例输入 2
5 3
3 4 1 3 4
样例输出 2
No
样例输入 3
7 5
1 2 3 4 5 5 10
样例输出 3
Yes
说明
样例解释
- 在第一个样例中,可以通过以下操作实现升序排列:
- 选择 ,交换 和 。序列变为 。
- 选择 ,交换 和 。序列变为 。 序列已变为升序。
- 在第三个样例中,序列本身已经是升序的,不需要任何操作。
数据范围
对于所有测试点,保证:
- 。
- 。
- 。
- 保证所有的输入值均为整数。