CF1893A.Anonymous Informant
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given an array b1,b2,…,bn .
An anonymous informant has told you that the array b was obtained as follows: initially, there existed an array a1,a2,…,an , after which the following two-component operation was performed k times:
- A fixed point † x of the array a was chosen.
- Then, the array a was cyclically shifted to the left ‡ exactly x times.
As a result of k such operations, the array b1,b2,…,bn was obtained. You want to check if the words of the anonymous informant can be true or if they are guaranteed to be false.
† A number x is called a fixed point of the array a1,a2,…,an if 1≤x≤n and ax=x .
‡ A cyclic left shift of the array a1,a2,…,an is the array a2,…,an,a1 .
输入格式
Each test contains multiple test cases. The first line contains an integer t ( 1≤t≤104 ) — the number of test cases. The description of the test cases follows.
The first line of each test case contains two integers n,k ( 1≤n≤2⋅105 , 1≤k≤109 ) — the length of the array b and the number of operations performed.
The second line of each test case contains n integers b1,b2,…,bn ( 1≤bi≤109 ) — the elements of the array b .
It is guaranteed that the sum of the values of n for all test cases does not exceed 2⋅105 .
输出格式
For each test case, output "Yes" if the words of the anonymous informant can be true, and "No" if they are guaranteed to be false.
输入输出样例
输入#1
6 5 3 4 3 3 2 3 3 100 7 2 1 5 5 6 1 1 1 1 1 1000000000 1 8 48 9 10 11 12 13 14 15 8 2 1 1 42
输出#1
Yes Yes No Yes Yes No
说明/提示
In the first test case, the array a could be equal to [3,2,3,4,3] . In the first operation, a fixed point x=2 was chosen, and after 2 left shifts, the array became [3,4,3,3,2] . In the second operation, a fixed point x=3 was chosen, and after 3 left shifts, the array became [3,2,3,4,3] . In the third operation, a fixed point x=3 was chosen again, and after 3 left shifts, the array became [4,3,3,2,3] , which is equal to the array b .
In the second test case, the array a could be equal to [7,2,1] . After the operation with a fixed point x=2 , the array became [1,7,2] . Then, after the operation with a fixed point x=1 , the array returned to its initial state [7,2,1] . These same 2 operations (with x=2 , and x=1 ) were repeated 49 times. So, after 100 operations, the array returned to [7,2,1] .
In the third test case, it can be shown that there is no solution.