#AT2191. C - K Swap
C - K Swap
当前没有测试数据。
C - K Swap
得分:300 分
问题描述
我们有一个长度为 $N$ 的序列:$A=(a_1,\ldots,a_N)$。此外,你还给出一个整数 $K$。
你可以执行以下操作零次或多次。
- 选择一个整数 $i$,使得 $1 \leq i \leq N-K$,然后交换 $a_i$ 和 $a_{i+K}$ 的值。
判断能否按升序排序$A$。
约束
- $2 \leq N \leq 2 \times 10^5$
- $1 \leq K \leq N-1$
- $1 \leq a_i \leq 10^9$
- 输入中的所有值都是整数。
输入
输入从标准输入中以以下格式给出:
输出
如果可以按升序排序$A$,则输出Yes
;否则,输出No
。
5 2
3 4 1 3 4
Yes
以下操作序列将按升序排序$A$。
- 选择 $i=1$ 交换 $a_1$ 和 $a_3$ 的值。$A$ 现在变为 $(1,4,3,3,4)$。
- 选择 $i=2$ 交换 $a_2$ 和 $a_4$ 的值。$A$ 现在变为 $(1,3,3,4,4)$。
5 3
3 4 1 3 4
No
7 5
1 2 3 4 5 5 10
Yes
不需要任何操作。