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
分组背包
(
分组背包
变型)
题意: 某人要买鞋,有k个品牌,每个品牌有j个款,每款都有标价和价值,要求已经M元内,每个品牌至少买一双鞋的最大价值和。 思路: 1. 要求每一组之中至少有一个被选中,和之前的最多有一个稍有区别,需要把题目再次细分。 2. dp[i][j] 表示选定 i 个品牌并且花费为 j 的最大价值,dp[i][j] 为正数表示状态存在,为负数表示状态不存在。 3. dp[i][j] = max(d
·
2015-11-12 17:57
love
HDOJ 1712 ACboy needs your help(
分组背包
入门)
思路:
分组背包
入门:dp[i][j] = max(dp[i-1][j-k] + valk) dp[i][j] 代表前 i 种物品付出时间 j 所得到的最大收益。
·
2015-11-12 17:56
help
ZOJ 3164 Cookie Choice(终极背包)
这次要用到泛化背包和
分组背包
的思想。每一组只能选择组里面的一类物品。 于是试图
·
2015-11-12 17:57
cookie
HDOJ 4345 Permutation(
分组背包
+ 数论)
题意: 给你一个数N(1<=N<=1000),求这么N有多少个不同的旋转长度。旋转长度是指,一个数最少经过多少步可以回到原来的数。 例如 N = 6 时,假如123、45、6分别为三个旋转周期,则旋转顺序为:123456,312546, 231456, 123546, 312456, 231546,123456,旋转长度为6。 当然你也可以12,34,56旋转周期,旋转长度为2。
·
2015-11-12 17:52
IO
POJ 1018 Communication System(
分组背包
DP)
和普通的分组DP还是有点差别的,要求背包容量固定的变化,而非1->V之类的 现在渐渐理解
分组背包
,1. 每组最多选择一个 2.
·
2015-11-12 17:50
System
hdu 1712 ACboy needs your help(
分组背包
)
分组背包
一水~ View Code 1 /* 2 Author:Zhaofa Fang 3 Lang:C++ 4 */ 5 #include <cstdio>
·
2015-11-12 16:51
help
杭电 1712 ACboy needs your help 解题报告
分组背包
的问题,挺巧妙的。推荐看一下背包九讲的第六讲:分组的背包问题。额,我贴在下面吧,当然这是大牛写的。
·
2015-11-12 15:56
help
分组背包
F - I love sneakers! Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status Description After months of h
·
2015-11-12 11:58
分组
HDU 1712 ACboy needs your help 典型的
分组背包
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1712 ACboy needs your help Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi
·
2015-11-12 10:51
help
(
分组背包
)
http://acm.hdu.edu.cn/status.php?user=515982859&pid=3033&status=5 题意: 有n个产品 m金额 k种品牌 每个产品 属于 a 品牌 b的价格 且具有c的价值量
·
2015-11-12 10:55
love
Vijos 1313 金明的预算方案 (
分组背包
)
题目链接 和多校上的黄金矿工很类似,貌似这个还简单点,每个主件,最多有2个附件,讨论下就可以,当然也神似树形DP。自己做的时候SB了,边输入边处理了,想当然了,果断悲剧了,交了N次之后,发现把背包分组的会错误,最可恨的是不知道该怎么搞了,想快排的,结构体神马的,发现从0开始,后来写的会很麻烦。。受不了了,把以前的代码改改,先把根找到,然后枚举他的孩子。。。虽然效率低点,终于DEBUG好几个小时后
·
2015-11-12 09:12
OS
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;
·
2015-11-11 16:10
help
1086超市购物(
分组背包
)
1086: 超市购物 Time Limit: 1 Sec Memory Limit: 128 MB SUBMIT: 122 Solved: 48 [SUBMIT] [STATUS] Description 上次去超市扫荡回来的东西用完了,Staginner又得跑超市一趟,出发前他
·
2015-11-11 12:02
分组
(
分组背包
变形)
分组背包
的变形,每种牌子要求至少选一个,这与
分组背包
的每组最多选一个不一样,但背包的思想都是一样的。。。 就是 状态转移的时候可以加上从上一组转移(选择1个)与本组转移(大于
·
2015-11-11 12:29
love
(
分组背包
变形)
分组背包
的变形,每种牌子要求至少选一个,这与
分组背包
的每组最多选一个不一样,但背包的思想都是一样的。。。 就是 状态转移的时候可以加上从上一组转移(选择1个)与本组转移(大于
·
2015-11-11 12:29
love
分组背包
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3033 After months of hard working, Iserlohn finally wins awesome amount of scholarship. As a great zealot of sneakers, he decides to spend all his money
·
2015-11-11 09:25
love
【HDU1712】ACboy needs your help(
分组背包
)
将背包九讲往后看了看,学习了一下
分组背包
。来做几道入门题,试试手。
·
2015-11-11 07:41
help
(
分组背包
)
看了许多的题解,都有题目翻译,很不错,以后我也这样写。直接翻译样例: 1 1 4 6 /*鞋子的数量N[1, 100]; 拥有的金钱M[1, 1w]; 品牌数目[1, 10]*/ 2 2 5 7 /*以下四行是对于每双鞋的描述*/ 3 3 4 99 /*品牌种类a; 标价b; 高兴程度增加量c*/ 4 1 55 77 5 2 44 66 6 7 /*每一种品牌的鞋子最少
·
2015-11-11 07:41
love
HDU 4003 Find Metal Mineral(
分组背包
+树形DP)
题目链接 很棒的一个树形DP。学的太渣了。 1 #include <cstdio> 2 #include <string> 3 #include <cstring> 4 #include <iostream> 5 #include <algorithm> 6 using namespace std; 7 i
·
2015-11-11 04:06
find
hdu 4003 树形dp+
分组背包
2011大连赛区网络赛C
题意:求K个机器人从同一点出发,遍历所有点所需的最小花费 链接:点我 Sample Input 3 1 1 //3个点,从1出发,1个机器人 1 2 1 1 3 1 3 1 2 1 2 1 1 3 1 Sample Output 3 2 转移方程: dp[i][j]=min(dp[i][j],dp[i][j*k],dp[son[i]][k]+l
·
2015-11-11 02:52
HDU
hdu 3033
分组背包
(每组至少选一个)
题意:有个小娃娃得了奖学金要去买东西,一共有n个东西分为k组,每个东西有一个花费和价值,问在每组东西至少买一个的条件下,小娃娃用他的奖学金买东西可以获得的最大价值。 思路:定义状态dp[i][v]表示在[1, i]组物品都至少有一个被购买时用v(背包容量)这么多钱能得到多少价值。 状态转移方程: if ( dp[i][v - cost[i][j]] != -1 ) dp[i][
·
2015-11-09 13:17
HDU
hdu 1712
分组背包
入门
对于每门课程,学习的时间不同,收获也不同,在一门课程上花费了两个不同的时间去学习是互斥的,即它们是属于同一个组内的物品,直接做
分组背包
即可。 需要注意三重循环的顺序不可变!
·
2015-11-09 13:02
HDU
树形DP+背包(poj1155泛化
分组背包
)
TELE Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 3675 Accepted: 1936 Description A TV-network plans to broadcast an important football
·
2015-11-08 14:30
poj
HDU 3535 AreYouBusy
该题要用
分组背包
做,这里就是要怎样处理0必须选,1最多选一个,2任意选的问题; 这里我们就开个二维数组;f[i][j],i表示第组,j表示时间;当该组为0时,我们在该组的选择可以来自上一组的结果,也可以来自该组的结果
·
2015-11-08 10:09
HDU
HDU 1712 ACboy needs your help
该题是一道
分组背包
题; 题意就是ACboy发最多M的时间能够得到最多效益;输入有N没课程,没门课程发费j天得到的效益是map[i][j]; View Code #include<iostream
·
2015-11-08 10:08
help
HDU 3033 I love sneakers!
这是我A的第一个
分组背包
,这就没有用优化,这是暴力的,这里优化可以先对分组进行排序,那样就会节约好多的时间;
分组背包
是:有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。
·
2015-11-08 10:07
love
简单
分组背包
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
分组背包
(每组至少选择一件物品)
题意:有n双鞋,a,b,c分别代表型号,价格和舒适度,当拥有m元时,每个型号的鞋至少买一双的最大舒适度是多少? #include"stdio.h" #include"string.h" #include"stdlib.h" #include"algorithm" #include"math.h"
·
2015-11-07 12:50
分组
hdu3535AreYouBusy【
分组背包
综合题】
ProblemDescriptionHappyNewTerm!Ashavingbecomeajunior,xiaoArecognizesthatthereisnotmuchtimeforhertoACproblems,becausetherearesomeotherthingsforhertodo,whichmakeshernearlymad.What'smore,herbosstellshert
zhou_yujia
·
2015-11-04 14:00
dp
HDU
杭电
分组背包
题目
hdu 1712 ACboy needs your help
分组背包
入门题目 http://acm.hdu.edu.cn/showproblem.php?
·
2015-11-02 15:57
分组
(
分组背包
,错了很多次)
Problem Description After months of hard working, Iserlohn finally wins awesome amount of scholarship. As a great zealot of sneakers, he decides to spend all his money on them in a sneaker store.
·
2015-11-02 14:25
love
我爱运动鞋 (
分组背包
,01背包,严重变形)
思路:
分组背包
严重变形了,变成了相反的,每组物品至少挑1件(
分组背包
是至多挑1件)。虽然是
分组背包
的变形,但是用到的却是01背包的思路。要求每家店至少买1双,那么可以只买一双双,也可以买多双。
·
2015-11-02 11:22
love
HDU 4341 Gold miner (
分组背包
)
Gold miner Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1488 Accepted Submission(s): 592 Pro
·
2015-11-01 11:21
HDU
(
分组背包
)
I love sneakers! Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submission(s) : 1 Accepted Submission(s) : 1 Problem Description After
·
2015-11-01 08:04
love
HDU 4003 Find Metal Mineral(树形DP+
分组背包
)
Find Metal Mineral Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Others)Total Submission(s): 1441 Accepted Submission(s): 631
·
2015-10-31 18:41
find
HDU 1561 The more, The Better(树形DP+
分组背包
)
The more, The Better Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3149 Accepted Submission(s): 18
·
2015-10-31 18:40
more
POJ-1947 Rebuilding Roads 树形DP+
分组背包
题目链接:http://poj.org/problem?id=1947 题目要求,在一颗树上,求一个点数为n的联通分支最少需要截断的边的个数。 容易想到状态转移方程f[u][j]=Min{ f[v][k]+f[u][j-k] | 1<=k<=j },f[u][j]表示以节点u为root的子树含有j个点时最少的截边个数。这里有个问题,那就是f[u][j]包不包含root节
·
2015-10-31 11:24
Build
POJ-2754 Similarity of necklaces 2 多重背包
id=2754 当时居然没有想到是多重背包,敲了个
分组背包
,TLE。。。
·
2015-10-31 11:24
poj
背包九讲之六(
分组背包
问题)
1 /* 2 有n件物品和一个容量为v的背包,第i件物品的费用是c[i],价值是w[i] 3 这些物品被分为若干组,每组中的物品互相冲突,即一组中只能取一件物品 4 将哪些物品装入背包使得总价值最大 5 dp[k][v] 表示前k组物品花费容量v能取到的最大值 6 dp[k][v] = max(dp[k-1][v],dp[k-1][v-c[i]]+w[i])//物品i属于第k
·
2015-10-31 11:09
问题
hdu 1561 树形dp+
分组背包
一个子节点就可以返回m个状态,每个状态表示容量为j(j<=m)时选最多的宝物,而一个子节点中只可以选择一个状态进行转移,每个节点有若干个子节点,问题就转换为
分组背包
,几个子节点就是几个
分组背包
,体积是选几个地点
·
2015-10-31 10:26
HDU
POJ-3345 Bribing FIPA 树形DP+
分组背包
自底向上更新时就是
分组背包
问题了: f[u][i]=Min{ f[u][i],f[u][i-j]+f[v][j] | v为u的儿子节点,0<=j
·
2015-10-31 10:55
bing
hdu 3033
分组背包
每组至少选一个
View Code //要注意dp转移的时候两重循环的顺序,w[x](鞋子的价格) 可能为0,如果换一下顺序可能会导致某双鞋被选了两次 #include<stdio.h> #include<string.h> int dp[11][10010]; int belong[10010]; int w[10010],v[10010]; int flag[20];
·
2015-10-31 08:08
HDU
hdu 1712(
分组背包
)
pid=1712 思路:这是一道简单的
分组背包
,因为每种课可以有多种选择:花几天时间在该课上。一旦作出选择,就不能再选该课,就相当于有多组物品,每组内的物品互相冲突,最多只能选一件。
·
2015-10-31 08:46
HDU
HDU 4044 GeoDefense(树形DP+
分组背包
)
GeoDefense Time Limit: 12000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 347 Accepted Submission(s): 138 Problem
·
2015-10-31 08:12
HDU
HDU-4341 Gold miner
分组背包
这里有多个点与原点的连线共线的话,那么需要对其进行并组,将前一个作为单独的一个,把前两个作为单独的一个...最后直接
分组背包
就可以了。
·
2015-10-30 14:29
HDU
1326: The contest(并查集+
分组背包
)
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1326 殷犇有很多队员。他们都认为自己是最强的,于是,一场比赛开始了~ 于是安叔主办了一场比赛,比赛有n个题目,每个题目都有一个价值Pi和相对能力消耗Wi,但是有些题目因为太坑不能同时做出来,并且坑题具有传递性。(a和b一起做会坑、b和c会坑则a和c也会坑) ACM队员
·
2015-10-30 13:35
test
dp之
分组背包
hdu3033 最少取1次的解法(推荐)
思路:很容易看出来这是个
分组背包
题,当然这个
分组背包
有些不同于每组最多取一个的分组背
·
2015-10-30 13:29
HDU
dp之
分组背包
hdu3535(推荐)
题意:有0,1,2三种任务,0任务中的任务至少得完成一件,1中的任务最多完成1件,2中的任务随便做。每一个任务最多只能做一次 。n代表有n组任务,t代表有t分钟,m代表这组任务有m个子任务,s代表这m个子任务属于0,1,2中的哪种类型,接下来是m个子任务,第一个数代表要花费的时间,第二个数代表得到的愉悦度......求在可以完成工作的情况的最大愉悦度....要是不能完成,输出-1(题意要求每个子任
·
2015-10-30 13:29
HDU
ural 1018(树形dp)
id=17662 思路:典型的树形dp,处理的时候类似于
分组背包
,dp[i][j]代表以i为根的树取j个分支获得的最大值。
·
2015-10-30 10:15
dp
HDU ACboy needs your help (
分组背包
)
ACboy needs your help Time Limit : 1000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submission(s) : 2 Accepted Submission(s) : 2 Problem Description A
·
2015-10-27 16:09
help
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
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
其他