求助简单dp题
  • 板块题目总版
  • 楼主Lovely_Elaina
  • 当前回复6
  • 已保存回复6
  • 发布时间2022/12/23 17:48
  • 上次更新2023/10/24 06:51:20
查看原帖
求助简单dp题
781159
Lovely_Elaina楼主2022/12/23 17:48

题目:ABC130E

#include <iostream>
#define INF 1000000007
#define max(a,b) (a>b?a:b)
using namespace std;
const int N = 2001;
int a[2*N],b[2*N],dp[N][N],n,m;
int main(){
    cin >> n >> m;
    for(int i = 1; i <= n; i++)
        cin >> a[i];
    for(int i = 1; i <= m; i++)
        cin >> b[i];
    for(int i = 1; i <= n; i++)
        for(int j = 1; j <= m; j++){
            dp[i][j] = max(dp[i-1][j],dp[i][j-1]);
            if(a[i] == b[j])
                dp[i][j] = max(dp[i][j],dp[i-1][j-1]+1);
        }
    cout << dp[n][m] % INF;
    putchar(10);
    return 0;
}

样例没过,不知道哪里错了

2022/12/23 17:48
加载中...