wa求调,悬关
查看原帖
wa求调,悬关
1134329
long_ting楼主2023/11/1 12:06
#include<iostream>

using namespace std;
int a[200005],b[200006],n;
int main(){
	int T;

	cin>>T;
	while(T--){
		cin>>n;
		int flag=0;
		for(int i=1;i<=n;i++){
			cin>>a[i];
			if(a[i]>n) flag=1;
			b[i]=0;
		}
		if(flag){
			puts("NO");
			continue;
		}
		b[1]=n;
		b[n+1]=0;
		for(int i=2;i<=n+1;i++){
			if(a[i]<a[i-1]){
				for(int j=a[i-1];j>=a[i]+1;j--)
				b[j]=i-1;
			}

		}
		for(int i=1;i<=n;i++){
			if(a[i]!=b[i]){
				flag=1;break;
			}
			
		//	cout<<b[i]<<" ";
		}
		if(flag) puts("NO");
		else puts("YES");
	}
}
     ```
2023/11/1 12:06
加载中...