/ WHOJ / 题库 /

摩押人与K子串

摩押人与K子串

题目描述

摩押人有一个元素个数为n的数组,他希望按非递减的顺序对该数组排序,排序按照以下方法:

\(1.\) 将数组拆分为 \(k\) 段,每段不能为空;

\(2.\) 重新排列这 \(k\) 个段,使得新合并的数组的所有元素顺序为非递减;

给定 \(k\),你能告诉摩押人是否有一种分段的方法,可以按上面描述的方法使得数组按非递减排序吗?

格式

输入格式

输入第一行一个正整数 \(t(1≤t≤10)\),表示测试数据组数;

每组数据两行,第一行,两个正整数 \(n,k(1≤n,k≤10^5)\),如题意;

第二行 \(n\) 个正整数 \(a_1,a_2,…,a_n(-10^9≤a_i≤10^9)\),表示元素个位为 \(n\) 的数组。

输出格式

对于每组数据输出一行,如果给定的k可以按照描述中的排序方法,将数组按非递减排序,则输出“ \(\text{Yes}\)”,否则输出“\(\text{No}\)”。

样例1

样例输入1

3
5 4
6 3 4 2 1
4 2
1 -4 0 -2
5 1
1 2 3 4 5

样例输出1

Yes
No
Yes

样例解释

样例中第一组数据,可以分段为 \(\{[6],[3,4],[2],[1]\}\),重排为 \(\{[1],[2],[3,4],[6]\}\),能够实现非递减排序。

限制

时间:\(1s\) 空间:\(256M\)

对于 \(30\%\) 的数据:\(1≤n,k≤10\);

对于 \(100\%\) 的数据:\(1≤t≤10;1≤n,k≤10^5\);

来源

地址:\(zloj,J2021\)域
作者:\(jialiang2509\)