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