对于给定的由 个整数组成的数组 ,你需要按照下述规则进行操作: 从数组中选出连续的 个元素(即选择一个长度为 的连续子数组); 将数组中剩余的 个元素重新排序; 在重新排序后的数组中选择一个位置,顺序插入刚刚选出的 个元素; 问是否存在至少一种方案,使得最终得到的数组是个严格递增或严格递减数组。
输入描述:
每个测试文件均包含多组测试数据。第一行输入一个整数 代表数据组数,每组测试数据描述如下:第一行输入两个整数 代表数组长度、你需要取出的元素数量。第二行输入 个整数 代表数组元素。除此之外,保证单个测试文件的 之和不超过 。


输出描述:
对于每一组测试数据,如果存在至少一种方案,使得最终得到的数组是个严格递增或严格递减数组,在单独的一行上输出 ;否则,直接输出 。
示例1

输入

4
5 5
1 2 3 4 5
3 2
9 2 4
6 3
12 3 8 7 6 5
5 3
1 3 2 4 5

输出

YES
YES
YES
NO

说明

\hspace{15pt}对于第一组测试数据,不需要进行任何操作,数组已经是严格递增数组。

\hspace{15pt}对于第二组测试数据,选择区间 [2,3] ,随后将这两个元素插入到 9 之前,得到 \{{\color{orange}2}, {\color{orange}4}, 9\}

\hspace{15pt}对于第三组测试数据,符合要求的方案为,选择区间 [3,5] ,随后将剩余的元素重新排列得到 \{12, 5, 3\} ,随后将这三个元素插入到 12 之后,得到 \{12, {\color{orange}8}, {\color{orange}7}, {\color{orange}6}, 5, 3\}
加载中...