样例过了,但WA4个!!!
查看原帖
样例过了,但WA4个!!!
750558
_Hu_Tao楼主2022/9/4 20:48

求助!代码如下

#include <bits/stdc++.h>
using namespace std;
int main() {
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
    	stack<int>stk;
    	int nn,f=1;
    	cin>>nn;int shun[100005]={0};
    	int x;
    	for(int i=1;i<=nn;i++){
    		cin>>shun[i];
		}
		stk.push(0);
		for(int j=1;j<=nn;j++){
			cin>>x;
			for(int i=1;i<=nn+1;i++){
				if(stk.top()<x){
					if(shun[i]>=0){
						stk.push(shun[i]);	
					}
					shun[i]=-1;
				}else if(stk.top()==x){
					stk.pop();
					break;
				}else if(stk.top()>x){
					cout<<"No"<<endl;
					f=0;
					break;
				}
			}
			if(f==0){
				break;
			}
		}
		if(f==0){
			continue;
		}
		if(!stk.empty()&&stk.top()==0){
			cout<<"Yes"<<endl;
		}else{
			cout<<"No"<<endl;
		}
		while(!stk.empty())stk.pop();
	}
}
2022/9/4 20:48
加载中...