//思路参考自LEETCODE@acvv_itdef 即下图231
`#include
#include
using namespace std;
stack s;
int a[20000],b[20000];
int main()
{
int n;cin>>n;
int flag =0;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
for(int i=0;i<n;i++)
{
cin>>b[i];
}
int i=0,j=0;
while(i<n)
{
if(b[j]!=a[i])
{
s.push(a[i++]);
continue;
}
if(b[j]= =a[i])
{
//s.push(a[i]);
//s.pop();
//注释掉的两句没什么用 主要是为了按照图上的逻辑来
i++,j++;
}
}
while(!s.empty())
{
if(s.top()!=b[j])
{
flag=1;
break;
}
s.pop();
j++;
}
if(flag==0)
{
cout<<“yes”;
}
else
{
cout<<“no”;
}
return 0;
}