hdu1712(分组背包)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1712
分析:
典型的分组背包问题,如果不会的可以看一下背包九讲。
看下背包九讲中的描述:
for 所有的组k
forv=V..0
for 所有的i属于组k
f[v]=max{f[v],f[v-c[i]]+w[i]}
组别肯定是课程,体积就是天数,故我的代码:
for (i=0; i<n; i++)
for (j=m; j>0; j--)
for (k=0; k<=j; k++)
dp[j] = max(dp[j], dp[j-k] + val[i][k]);
#include <cstdio>
#include <cstring>
#include <cmath>
#include <iostream>
#include <algorithm>
#include <queue>
#include <cstdlib>
#include <vector>
#include <set>
#include <map>
#define LL long long
#define inf 1<<30
using namespace std;
int val[][],dp[];
int n,m;
int main()
{
while(scanf("%d%d",&n,&m)&&n&&m)
{
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
scanf("%d",&val[i][j]);
memset(dp,,sizeof(dp));
for(int i=;i<=n;i++)//每种课程分为一组,只能选一个!
for(int j=m;j>=;j--)//总体积
for(int k=;k<=j;k++) //遍历每组的物品
dp[j]=max(dp[j],dp[j-k]+val[i][k]);
printf("%d\n",dp[m]);
}
}
hdu1712(分组背包)的更多相关文章
- hdu1712 分组背包
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=1712 题意:有n门课程,和m天时间,完成mp[i][j]得到的价值为第i行j列的数字,求最 ...
- hdu1712 分组背包 ACboy needs your help
ACboy needs your help Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- 分组背包模板题 hdu1712
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1712 第一次接触分组背包,参考博客:https://blog.csdn.net/yu121380/ar ...
- P1757 通天之分组背包 / hdu1712 ACboy needs your help (分组背包入门)
P1757 通天之分组背包 hdu1712 ACboy needs your help hdu1712题意:A[i][j]表示用j天学习第i个课程能够得到A[i][j]的收益,求m天内获得的收益最大值 ...
- hdu1712 ACboy needs your help 分组背包
最基础的分组背包~ #include <iostream> #include <cstdio> #include <cstdlib> #include <cs ...
- HDU1712简单的分组背包
HDU1712http://acm.hdu.edu.cn/showproblem.php?pid=1712 简单的分组背包 #include <map> #include <set& ...
- 【HDU1712】ACboy needs your help(分组背包)
将背包九讲往后看了看,学习了一下分组背包.来做几道入门题,试试手. #include <iostream> #include <cstring> #include <cs ...
- HDU1712:ACboy needs your help(分组背包模板)
http://acm.hdu.edu.cn/showproblem.php?pid=1712 Problem Description ACboy has N courses this term, an ...
- dp之分组背包hdu1712
题意:有n门课程,和m天时间,完成a[i][j]得到的价值为第i行j列的数字,求最大价值...... 思路:分组背包,就是第n门课程,可以做一天,可以做两天,但它们相斥,你做了一天,就不能再做一天.. ...
- HDU1712:ACboy needs your help(分组背包)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1712 解释看这里:http://www.cnblogs.com/zhangmingcheng/p/3940 ...
随机推荐
- iOS技术开发-人机交互指南之UI设计基础:iOS App Anatomy
第二篇更多的是从技术的角度对iOS界面组成原理进行了简单的解析,篇幅很短,可稍作了解:更多关于iOS开发入门的内容可参考“设计师应该了解的iOS应用开发基础知识”一文.另外,非常感谢各位朋友在微博上的 ...
- 将258.369 double值转为内存表示(科学计数法)
前言 庖丁解牛 - <<庄子>> 庖丁为文惠君解牛,手之所触, 肩之所倚, 足之所履, 膝之所踦, 砉然向然, 奏刀騞然, 莫不中音, 合于<桑林>之舞, 乃中&l ...
- 根据input 标签取value属性的值
jrhmpt01:/root/lwp/0526# cat a1.pl use LWP::UserAgent; use DBI; use POSIX; use Data::Dumper; use HTM ...
- OCP-1Z0-051-题目解析-第31题
31. Evaluate the following SQL commands: SQL>CREATE SEQUENCE ord_seq INCREMENT BY 10 START WITH 1 ...
- FFMPEG H264/H265 编码延迟问题
最新使用FFmpeg进行H264的编码时,发现视频编码有延迟,不是实时编码.进过一番研究发现,仅仅要在调用avcodec_open2函数 打开编码器时,设置AVDictionary參数就可以.关键代码 ...
- 进阶: 案例八: Drag and Drop(动态)
1.节点 2.UI 3. 4.方法: METHOD wddomodifyview . DATA: lo_container TYPE REF TO cl_wd_uielement_container, ...
- Eequal sum sets
Let us consider sets of positive integers less than or equal to n. Note that all elements of a set a ...
- TObject简要说明-对象的创建流程
TObject = class //创建 constructor Create; //释放 procedure Free; //初始化实列 class functi ...
- Google Ads Encryption Key
aes | floyd's Google Ads Encryption Key
- 正确理解Python文件读写模式字w+、a+和r+
w+ 和 r+的差别不难理解.还有a+ +同一时候读写,就可以读又可写,边写边读.边读边写,不用flush,用seek 和 tell可測得. fp = open("a.txt", ...