tanghg @ 2022-07-08 12:00:21
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;
}
by tanghg @ 2022-07-08 12:00:47
样例过了
by Hua生 @ 2022-07-08 12:32:07
不一定全部元素入栈后才开始出栈。
by tanghg @ 2022-07-08 12:35:14
@Hua生 哦,所以说题解要循环去看我就明白了,谢谢您
by tanghg @ 2022-07-08 12:36:04
此帖结