测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A62779. 阅读程序题:#include <algorithm>

编程题

题目描述

阅读程序题:

#include <algorithm>
#include <cstdio>
#include <cstring>
#define ll long long
int f[5007][5007];
int a[5007], b[5007];
int n;
int main(){
    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){
            f[i][j] = std::max(f[i-1][j], f[i][j-1]);
            if(a[i]==b[j]){
            f[i][j] = std::max(f[i][j], f[i-1][j-1]+1);
            }
        }
    }
    printf("%d\n", f[n][n]);
    return 0;
}