8616样例过不了

#include<bits/stdc++.h>
using namespace std;
int t,n,b1[1000010],b2[1000010];
stack<int> a;
int main(){
	cin>>t;
	for(int i=1;i<=t;i++){
		cin>>n;
		for(int j=1;j<=n;j++)
			cin>>b1[j];
		for(int j=1;j<=n;j++)
		    cin>>b2[j];
		int cnt=1;
		for(int j=1;j<=n;j++){
			a.push(b1[j]);
			if(a.top()==b2[cnt]){
				a.pop();
				cnt++;
			}
		}
		while(a.top()==b2[cnt]&&!a.empty()){
			a.pop();
			cnt++;
		}
		if(a.empty())
		    cout<<"Yes"<<endl;
		else 
		    cout<<"No"<<endl;
	}
	return 0;
}
1 个赞

哪道题呀快说

1 个赞