Adore_the_No_2 @ 2021-12-25 16:12:36
RT
#include<bits/stdc++.h>
using namespace std;
int a[100001],b[100001];
stack<int> s;
int main()
{
int T;
cin>>T;
while(T--)
{
int n,k=1;
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=n;i++)
cin>>b[i];
for(int i=1;i<=n;i++)
{
s.push(a[i]);
if(s.top()==b[k])
{
s.pop();
k++;
}
}
for(int i=k;i<=n;i++)
{
if(s.top()==b[i])
s.pop();
else
break;
}
if(s.empty())
{
cout<<"YES"<<endl;
}
else
cout<<"NO"<<endl;
if(!s.empty())
{
s.pop();
}
}
return 0;
}
by greenhb @ 2022-02-09 18:28:26
是不是应该用while循环