include[HTML_REMOVED]
using namespace std;
int a[3030],b[3040],f[4040][4040],n,Max;
int main(){
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){
int Maxv=1;
for(int j=1;j<=n;j){
f[i][j]=f[i-1][j];
if(a[i]==b[j]){
f[i][j]=max(f[i][j],Maxv);
}else if(a[i]>b[j]){
Maxv=max(Maxv,f[i-1][j]+1);
}
Max=max(Max,f[i][j]);
}
}
cout<<Max;
}