雷涛的小猫

来源:互联网 发布:软件系统集成技术方案 编辑:程序博客网 时间:2024/04/20 08:06
#include<cstdio>#include<cstring>#include<cmath>#include<iostream>#include<algorithm>using namespace std;int n,h,delta;#define N 2010int a[N][N];int dp[N][N],mx[N];int main(){    scanf("%d%d%d",&n,&h,&delta);    int t,t2;    for(int i=1;i<=n;i++)    {        scanf("%d",&t);        for(int j=1;j<=t;j++)        {            scanf("%d",&t2);            a[i][t2]++;         }               }    int ans = 0;    for(int i=h;i;i--)    {        mx[i] = 0;        for(int j=1;j<=n;j++)        {            if(i+delta<=h)                dp[j][i]=mx[i+delta];            dp[j][i] = max(dp[j][i],dp[j][i+1]);            dp[j][i]+=a[j][i];            mx[i] = max(mx[i],dp[j][i]);                            ans = max(ans,dp[j][i]);        }           }    printf("%d\n",ans);    return 0;}
1 0