zoukankan      html  css  js  c++  java
  • hdu 1712 ACboy needs your help (dp 分组背包)

    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    int a[200][200];
    int dp[200];
    int main()
    {
        int n,m;
        int i,j,k;
        while(scanf("%d%d",&n,&m)!=EOF)
        {
            if(n==0&&m==0) break;
            memset(dp,0,sizeof(dp));
            int ans=0;
            for(i=1;i<=n;i++)
            {
                for(j=1;j<=m;j++)
                {
                    scanf("%d",&a[i][j]);
                }
            }
            for(i=1;i<=n;i++)  //第 i 项作业
            {
                for(j=m;j>=1;j--)  //剩 j 天
                {
                    for(k=1;k<=j;k++)
                    {
                        dp[j]=max(dp[j],dp[j-k]+a[i][k]);
                        ans=max(ans,dp[k]);
                    }
                }
            }
            printf("%d
    ",ans);
        }
        return 0;
    }
    
  • 相关阅读:
    F. 数学上来先打表
    LibreOJ β Round #2
    noip飞扬的小鸟
    jxoi2017
    分块算法
    Chino的数列
    cf 613E
    cf 126D
    cf 542E
    cf 512D
  • 原文地址:https://www.cnblogs.com/sola1994/p/4684419.html
Copyright © 2011-2022 走看看