#include<bits/stdc++.h>
int n,a[4000100],f[4000100],d[4000100],maxx[4000100],minn[4000100],ans;
signed main()
{
scanf("%d",&n);
for(register int i=1;i<=n;++i)scanf("%d",&a[i]);
for(register int i=1;i<=n;++i)scanf("%d",&f[i]);
for(register int i=0;i<=n;++i)d[a[i]]=i,maxx[i]=INT_MIN,minn[i]=INT_MAX;
for(register int i=1;i<=n;++i)maxx[i]=std::max(maxx[i-1],d[i]),minn[i]=std::min(minn[i-1],d[i]);
for(register int i=1;i<=n;++i)if(!ans&&f[i]<=n&&maxx[f[i]]-minn[f[i]]+1<=i)ans=i;
printf("%d",ans);
return 0;
}
请不要抄袭