链接:https://codeforces.ml/contest/1341/problem/C
Being upset after this behavior of Nastya, Denis was very sad. Nothing could make the rejected guy happier. To at least somehow have fun, he decided to walk through the gateways. And, luck smiled at him! When he entered the first courtyard, he met a strange a man who was selling something.
Looking around, Denis went to the stranger and bought a mysterious product. It was... Random permutation generator! That is what the boy has been looking for so long!
When he arrived home, he began to study how his generator works and learned the algorithm. The process of generating a permutation consists of nn steps. At the ii-th step, a place is chosen for the number ii (1≤i≤n)(1≤i≤n). The position for the number ii is defined as follows:
Let's have a look at the operation of the algorithm in the following example:
正在上传…重新上传取消
Let n=5n=5 and the algorithm has already arranged the numbers 1,2,31,2,3 in the permutation. Consider how the generator will choose a position for the number 44:
Satisfied with his purchase, Denis went home. For several days without a break, he generated permutations and decided that he was filled with awareness of the generation process. He believes that he can come up with random permutations no worse than a generator. After that, he wrote out the first permutation that came to mind p1,p2,…,pnp1,p2,…,pn and decided to find out if it could be obtained as a result of the generator.
Unfortunately, this task was too difficult for him, and he turned to you for help. It is necessary to define whether the written permutation could be obtained using the described algorithm if the generator always selects the position Denis needs.
Input
The first line contains a single integer tt (1≤t≤105)(1≤t≤105) — the number of test cases. Then the descriptions of the test cases follow.
The first line of the test case contains a single integer nn (1≤n≤105)(1≤n≤105) — the size of the permutation.
The second line of the test case contains nn different integers p1,p2,…,pnp1,p2,…,pn (1≤pi≤n1≤pi≤n) — the permutation written by Denis.
It is guaranteed that the sum of nn over all test cases doesn't exceed 105105.
Output
Print "Yes" if this permutation could be obtained as a result of the generator. Otherwise, print "No".
All letters can be displayed in any case.
Example
input
Copy
5 5 2 3 4 5 1 1 1 3 1 3 2 4 4 2 3 1 5 1 5 2 4 3
output
Copy
Yes Yes No Yes No
Note
Let's simulate the operation of the generator in the first test.
At the 11 step, r=[1,2,3,4,5],count=[1,1,1,1,1]r=[1,2,3,4,5],count=[1,1,1,1,1]. The maximum value is reached in any free position, so the generator can choose a random position from 11 to 55. In our example, it chose 55.
At the 22 step, r=[1,2,3,4,×],count=[1,1,1,1,0]r=[1,2,3,4,×],count=[1,1,1,1,0]. The maximum value is reached in positions from 11 to 44, so the generator can choose a random position among them. In our example, it chose 11.
At the 33 step, r=[2,2,3,4,×],count=[0,2,1,1,0]r=[2,2,3,4,×],count=[0,2,1,1,0]. The maximum value is 22 and is reached only at the 22 position, so the generator will choose this position.
At the 44 step, r=[3,3,3,4,×],count=[0,0,3,1,0]r=[3,3,3,4,×],count=[0,0,3,1,0]. The maximum value is 33 and is reached only at the 33 position, so the generator will choose this position.
At the 55 step, r=[4,4,4,4,×],count=[0,0,0,4,0]r=[4,4,4,4,×],count=[0,0,0,4,0]. The maximum value is 44 and is reached only at the 44 position, so the generator will choose this position.
In total, we got a permutation of 2,3,4,5,12,3,4,5,1, that is, a generator could generate it.
题解:看不懂题,靠样例猜对的。。。
#include
using namespace std;
long long n,m,k,t,s,min1,max1;
long long a[200001];
long long b[200001];
int main()
{
cin>>t;
while(t--)
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
int flag=1;
for(int i=2;i<=n;i++)
{
if(a[i]>a[i-1])
{
if(a[i]-a[i-1]==1)
continue;
else
{
flag=0;
break;
}
}
}
if(flag==1)
cout<<"Yes"<