zoukankan      html  css  js  c++  java
  • hdu 1712 分组背包

    ACboy needs your help

    Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 3124    Accepted Submission(s): 1623


    Problem Description
    ACboy has N courses this term, and he plans to spend at most M days on study.Of course,the profit he will gain from different course depending on the days he spend on it.How to arrange the M days for the N courses to maximize the profit?
     

    Input
    The input consists of multiple data sets. A data set starts with a line containing two positive integers N and M, N is the number of courses, M is the days ACboy has.
    Next follow a matrix A[i][j], (1<=i<=N<=100,1<=j<=M<=100).A[i][j] indicates if ACboy spend j days on ith course he will get profit of value A[i][j].
    N = 0 and M = 0 ends the input.
     

    Output
    For each data set, your program should output a line which contains the number of the max profit ACboy will gain.
     

    Sample Input
    2 2
    1 2
    1 3
    2 2
    2 1
    2 1
    2 3
    3 2 1
    3 2 1
    0 0
     
    Sample Output
    3
    4
    6
    #include<iostream>
    #include<cmath>
    #include<cstring>
    #include<cstdio>
    using namespace std;
    int main()
    {
        int n,m,p[110][110],s[110][110];
        int i,j,k,v;
        while(cin>>n>>m)
        {
            if(n==0&&m==0)
                break;
            for(i=1; i<=n; i++)
                for(j=1; j<=m; j++)
                    scanf("%d",&p[i][j]);
            memset(s,0,sizeof(s));
            for(i=1; i<=n; i++)
            {
                for(j=m; j>=0; j--)
                    for(k=j; k>=1; k--)
                    {
                        s[i][j]=max(s[i][j],s[i-1][j]);//开始没有加这一句,一直wa
                        s[i][j]=max(s[i][j],s[i-1][j-k]+p[i][k]);
                    }

            }
            int mm=0;
            for(i=1; i<=m; i++)
                if(s[n][i]>mm)
                    mm=s[n][i];
            cout<<mm<<endl;
        }
    }

  • 相关阅读:
    Something I know about WebDynpro
    Details about support package implementation
    CRM Middleware Performance Topics
    Way to configure the logon navigaion layouts via Business Roles in CRM
    DOM 常用节点类型和方法
    第一届 xdef 会议日程
    去除百度音乐盒广告的chrome插件 持续更新
    从人人网抓取高校数据信息,包括,省份 高校 院系 (提供最终SQL文件下载)
    PHP 与 JSON
    解决HTTPS 发送请求走socket问题
  • 原文地址:https://www.cnblogs.com/ainixu1314/p/3379057.html
Copyright © 2011-2022 走看看