rt,我认为好像没有问题,但是我看题解好像都是用数组做的,我不太清楚这种做法的错误,还请帮忙指出,谢谢您。
#include <iostream>
#include <stack>
using namespace std;
typedef long long ll;
stack<ll>a;
ll n,q,A;
int main() {
cin>>q;
for(int i=0;i<q;i++){
cin>>n;
for(int j=0;j<n;j++){
cin>>A;
a.push(A);
}
for(int j=0;j<n;j++){
cin>>A;
if(A!=a.top()){
break;
}
a.pop();
if(a.empty()){
break;
}
}
if(a.empty()){
cout<<"Yes"<<endl;
}else{
cout<<"No"<<endl;
}
while(!a.empty()){
a.pop();
}
}
return 0;
}