Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- int main(){
- int n,m;
- scanf("%d",&n);
- int a[n+10],b[n+10],dp[n+10];
- for(int i=1;i<=n;i++){
- scanf("%d",&a[i]);
- }
- for(int i=1;i<=n;i++){
- scanf("%d",&m);
- for(int j=1;j<=n;j++){
- if(m==a[j]){
- b[j]=i;
- }
- }
- }
- int mx=-2e9;
- for(int i=1;i<=n;i++){
- dp[i]=1;
- for(int j=1;j<i;j++){
- if(b[j]<b[i]) dp[i]=max(dp[i],dp[j]+1);
- }
- mx=max(mx,dp[i]);
- }
- printf("%d",mx);
- }
Advertisement
Add Comment
Please, Sign In to add comment