上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 14 下一页
摘要: 题目 "https://vjudge.net/problem/Uva 12563" 给出n首歌和KTV的剩余时间T,因为KTV不会在时间到的时候立刻把歌切掉,而是会等它放完.而《劲歌金曲》长达678秒,因此你可以在从你喜欢的歌中选择一些,在时间结束前再唱一首《劲歌金曲》. 给出一种策略,使得唱的歌曲 阅读全文
posted @ 2017-09-01 15:13 lepeCoder 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 题目 "http://acm.hdu.edu.cn/showproblem.php?pid=2602" 分析 基础背包问题,有一个容量为V的背包,各种骨头有大小和价值两种属性,求背包能装的骨头的最大价值. AC代码 cpp include "bits/stdc++.h" using namespac 阅读全文
posted @ 2017-08-31 17:04 lepeCoder 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 题目 有一个容量为V的背包和N种物品,第i件物品的体积是c[i] 价值是w[i] 共有n[i]件,请给出一种策略使得装入背包中的物品价值最高. 基本算法 和完全背包问题类似,区别是完全背包每种物品的数量是无限的而多重背包是有限的.可以仿照完全背包写出状态转移方程: 下面给出O(log amount) 阅读全文
posted @ 2017-08-30 17:39 lepeCoder 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 题目 "hdu 1171" 大意是有n类设备,每类设备的价值相同,要求将所有的设备分成价值尽量相等的两份. 分析 这是一个 "多重背包" 问题,而背包的容量就是价值的一半 多重背包的一个解法就是转化为01背包,将背包的数量属性直接反映为m个价值相等的01背包物品 AC代码 cpp include " 阅读全文
posted @ 2017-08-30 17:38 lepeCoder 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 题目 "hdu 2546" 分析 余额 =5就可以买任何商品(购买后余额可以为负),余额 n && n){ for(i = 0; i a[i]; cin m; int V = m 5; if(V ans){ ans = a[i]; ansi=i; } } a[ansi] = 0; for(i=0;i 阅读全文
posted @ 2017-08-30 17:37 lepeCoder 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 题目 有N种物品和一个容量为V的背包,每种物品都有无限件可用。第i种物品的体积是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大。 基本思路 和 "01背包" 不同的是每种物品都有无限件,对每种物品的策略也不是取或不取,而是取0件 取1件 取2件· 阅读全文
posted @ 2017-08-26 20:13 lepeCoder 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 问题 有n种物品,每种只有一件,物品具有价值和体积两个属性 一个容量为v的背包 每种物品可以选择是否放入背包中 选择合适的策略,使得背包中的物品总价值最高 思路 定义 表示处理前i个物品,背包剩余容量为v时背包的最大价值 状态转移方程: 如果不装第i个物品,则 如果装第i个物品,则价值增加 ,背包容 阅读全文
posted @ 2017-08-25 22:37 lepeCoder 阅读(425) 评论(0) 推荐(1) 编辑
摘要: 题目 "https://vjudge.net/problem/uva 116" 分析 设 为从 到最后一列的最小开销,则 参考 "数字三角形" ,用逆推的方法,先确定最后一列 ,再确定 列,此时 最终推出全部的 后,第一列最小的d就是答案. 另外要求打印路径,因此建立一个数组 ,保存结点i,j之后的 阅读全文
posted @ 2017-08-24 14:28 lepeCoder 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 题目 有n(n0) return d[i][j]; d[i][j]=0; int v1[2], v2[2]; get_dimensions(v1, i, j); for(int a=0;a n && n){ for(i=0;i blocks[i][j]; } sort(blocks[i], bloc 阅读全文
posted @ 2017-08-19 20:35 lepeCoder 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 原题 "城市里的间谍" 分析 动态规划, 表示你在时刻i,车站j,最少还要等待的时间. 边界条件 _已经到达_,其他 _不可达_. 在一个站点时,有以下三种决策: 1. 等一分钟 2. 搭乘往左开的车(前提是有) 3. 搭乘往右开的车 AC代码 cpp include "bits/stdc++.h" 阅读全文
posted @ 2017-08-17 16:38 lepeCoder 阅读(399) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 14 下一页