E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
hdu1712
【题解】
hdu1712
分组背包
题目链接#include#include#includeusingnamespacestd;inta[110],b[110],dp[110][110];//经验值忍耐度intmain(){//freopen("in.txt","r",stdin);inti,j,k,n,m,s,l;while(~scanf("%d%d%d%d",&n,&m,&k,&s))//经验值忍耐度种数杀怪数{boolflag
不进清北不改名
·
2020-09-17 12:45
hdu
背包问题
洛谷 P1336 最佳课程选择(分组背包)
题目:https://www.luogu.org/problemnew/show/P1336思路:转化为分组背包就简单了,和
hdu1712
一模一样的。
Werky_blog
·
2020-08-23 02:47
背包问题
hdu1712
ACboy needs your help(分组背包板子)
分组背包板子。问题有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。这些物品被划分为若干组,每组中的物品互相冲突,最多选一件。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。算法这个问题变成了每组物品有若干种策略:是选择本组的某一件,还是一件都不选。也就是说设f[k][v]表示前k组物品花费费用v能取得的最大权值,则有:f[k][v]=max{
Icefox_zhx
·
2020-07-27 15:24
其他oj
分组背包
题目:1、
hdu1712
AcTarjan
·
2019-05-15 18:31
动态规划
hdu1712
(01背包)
ACboyneedsyourhelpTimeLimit:1000/1000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):6054 AcceptedSubmission(s):3309ProblemDescriptionACboyhasNcoursesthisterm,andheplanst
martinue
·
2016-05-16 19:00
dp
ACM
大二
hdu1712
分组背包(每组最多只选一个)
题意: 用m天的时间来学n门课程,给出n和m和一个num[n][m]的矩阵,num[n][m] 代表的是花m天的时间学习第n门课程所获得的价值,求最多能获得多大的价值 #include <iostream> #include <cstdio> #include <vector> #include <cstring> using name
·
2015-11-13 10:34
HDU
hdu1712
(分组背包)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1712 分析: 典型的分组背包问题,如果不会的可以看一下背包九讲。
·
2015-11-13 06:35
HDU
【
HDU1712
】ACboy needs your help(分组背包)
将背包九讲往后看了看,学习了一下分组背包。来做几道入门题,试试手。 1 #include <iostream> 2 #include <cstring> 3 #include <cstdlib> 4 #include <cstdio> 5 #include <cmath> 6 #include &
·
2015-11-11 07:41
help
简单分组背包ACboy needs your help(
hdu1712
)
题意:有n个任务,完成期限是m天,a[i][j]代表第i个任务用j天完成可以获得的利益,问在这m天里面可以获得的最大利益,每次只能做一个任务,即多个任务不能同时做; 分析;用dp[i][j]代表在做第i个任务的时候j天获得的最大利益; #include"stdio.h" #include"string.h" #include"stdlib.
·
2015-11-07 12:50
help
HDU2069 Coin change HDU 1114 Piggy-Bank
HDU1712
ACboy needs your help
HDU 2069 Coin Change 换零钱, 计算有多少方案数 #include <stdio.h> #include <string.h> #include <algorithm> using namespace std; #define N 100010 int dp[N], w[5], v[5], n, m; int main() {
·
2015-10-31 19:12
change
HDU1712
分组背包
#include #include #include #include usingnamespacestd; constintmaxn=110,maxm=110; inta[maxn][maxn],f[maxm]; intmain(){ inti,j,k,m,n; while(1){ cin>>n>>m; if(n+m==0)break; for(i=1;i>a[i][j]; memset(f,0
cnyali
·
2015-09-03 22:00
分组背包
hdu1712
ACboy needs your help
最裸的分组背包记住枚举顺序for(枚举组数){ for(从大到小枚举体积){ for(枚举这一组中的个体){ 和01背包的滚动数组代码完全一致 } }}如果不知道为什么,强烈推荐百度一下背包九讲,里面说的非常的清楚~#include #include #include #include #include #include #include #include usin
qwb492859377
·
2015-07-29 01:00
hdu1712
分组背包 ACboy needs your help
ACboy needs your help Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5022 Accepted Submission(s): 2
·
2015-07-25 17:00
help
hdu1712
ACboy needs your help
ProblemDescriptionACboyhasNcoursesthisterm,andheplanstospendatmostMdaysonstudy.Ofcourse,theprofithewillgainfromdifferentcoursedependingonthedayshespendonit.HowtoarrangetheMdaysfortheNcoursestomaximize
Kirito_Acmer
·
2015-07-01 14:00
背包DP
【泛化物品】【
HDU1712
】【ACboy needs your help】
ACboyneedsyourhelpTimeLimit:1000/1000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):4491 AcceptedSubmission(s):2403ProblemDescriptionACboyhasNcoursesthisterm,andheplanst
zy691357966
·
2015-02-02 21:00
hdu1712
分组背包问题
问题有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。这些物品被划分为若干组,每组中的物品互相冲突,最多选一件。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。算法这个问题变成了每组物品有若干种策略:是选择本组的某一件,还是一件都不选。也就是说设f[k][v]表示前k组物品花费费用v能取得的最大权值,则有:f[k][v]=max{f[k-1][
u013573047
·
2014-12-20 15:00
HDU2069 Coin change HDU 1114 Piggy-Bank
HDU1712
ACboy needs your help
HDU2069CoinChange换零钱,计算有多少方案数#include #include #include usingnamespacestd; #defineN100010 intdp[N],w[5],v[5],n,m; intmain() { w[0]=1;w[1]=5;w[2]=10;w[3]=25;w[4]=50; memset(dp,0,sizeof(dp)); dp[0]=1;
tenlee
·
2014-11-22 14:00
hdu1712
ACboy needs your help 我的ACM我的梦,回顾篇 分组背包
题目链接:here 题目大意:一开始输入n和m,n代表有n门课,m代表你有m天,然后给你一个数组,val[i][j],代表第i门课,在通过j天去修,会得到的分数。求在m天能得到的最大分数。 题目分析: 典型的分组背包问题,如果不会的可以看一下背包九讲,在这里也会稍作解释。 看下背包九讲中的描述: for所有的组k
liuqiyao_01
·
2014-05-28 11:00
dp
ACM
分组背包
HDU1712
二维01背包
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1712背包容量有考试门数和给的复习天数状态转移公式:dp[i][j]=max(dp[i][j],dp[i-1][i-c[i]]+w[i]);#include #include #include usingnamespacestd; intdp[105][105]; intmatrix[105][105]
u013790563
·
2014-04-26 15:00
hdu1712
ACboy needs your help
跟资源分配类型动态规划里的机器分配相似。背包九讲里的分组背包模型,三重循环OK。第一重枚举第几组,第二重枚举背包容量,要倒着来,第三重枚举该组里面的物品。#include #include #definemax(a,b)a>b?a:b inta[110][110]; intf[110]; intmain() { intn,m,i,k,j; while(scanf("%d%d",&n,&m),n+
yew1eb
·
2013-08-24 15:00
hdu1712
ACboy needs your help (分组背包)
#include #include #defineMAXN102 //分组背包intmain() { intn,m,i,j,k; intdp[MAXN],profit[MAXN][MAXN]; while(scanf("%d%d",&n,&m),(n||m)) { for(i=1;i=1;--j) for(k=1;k<=j;++k) { if(dp[j]
lezong2011
·
2013-07-24 11:00
hdu1712
分组背包
//分组背包中,每组都能连上的背包,每组取的方式都一样,可以随意取。 #include #include #include #definemaxn105 usingnamespacestd; intn,m; intv[maxn][maxn],f[maxn]; intmax(intx,inty) { returnx>y?x:y; } intmain() { while(scanf("%d%d",&n
qq415200973
·
2013-07-13 23:00
hdu1712
分组背包
http://acm.hdu.edu.cn/showproblem.php?pid=1712背包九讲的思路#include #include #include usingnamespacestd; intdp[105]; structnode { intw,v; }; nodeg[105][105]; intmain() { intn,m; while(scanf("%d%d",&n,&m)) {
JustSteps
·
2013-03-24 14:00
hdu1712
ACboy needs your help
题意:有个ACboy有这学期有N门课要学,他打算最多花M天去学习,当然,他的收益决定于他在课程上花的天数输入:221213课程编号为1,2,,,N每个样例的第一行为n,m接下来为n*m的矩阵a,a[i][j]表示在i课程上花j天的收益解法:分组的背包问题,做法详见背包九讲,写的时候先将每个组看成一个整体,化为01背包,然后再加入组的成员#include #include #include usin
zhangwei1120112119
·
2012-11-18 19:00
06 分组背包 hdu 1712 3033
内容见:背包九讲相关题目:hdu 17123033 3535(各种分组背包)
hdu1712
代码:#include #include usingnamespacestd; intf[110]; intw[
LiWen_7
·
2012-07-25 18:00
c
测试
产品
hdu1712
/*分析: 背包。dp[i][l]=max(dp[i-1][l],max(dp[i-1][l-k]+x[k])) (1b?a:b; } intmain() { intdp[111]; intn,m; intx[111]; inti,j,k; intans; while(scanf("%d%d",&n,&m),n||m) { if(n==0||m==0) { printf("0\n"); cont
Ice_Crazy
·
2012-05-10 15:00
hdu1712
分组背包
//分组背包,看背包九讲/*for所有的组kforv=V..0for所有的i属于组kf[v]=max{f[v],f[v-c[i]]+w[i]}*/#include#includeusingnamespacestd;inta[101][101];intn,m;intdp[101];//dp[i]表示用i天的时间做功课得到的最大收益intmax(inta,intb){returna>b?a:b;}vo
u012523797
·
2011-04-04 00:00
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他