安排n个人写m行代码,每个人每行会出a[i]个bug,求最多出现b个bug的方案数。
一个二维的完全背包,每个人有两个状态:写j行代码出k个bug
dp[i][j][k] 前i个程序员写钱j行出现k个bug的方案数。
dp[i][j][k] = dp[i][j-1][k-a[i]] + dp[i-1][j][k];
注意这里数组会超内存,需要用滚动数组。
#include
us...
分类:
其他好文 时间:
2015-05-08 22:03:18
阅读次数:
167
题目传送门 1 /* 2 题意:n个程序员,每个人每行写a[i]个bug,现在写m行,最多出现b个bug,问可能的方案有几个 3 完全背包:dp[i][j][k] 表示i个人,j行,k个bug dp[0][0][0] = 1 表示不选择人的时候所有的bug的种类犯错误都只有一种...
分类:
其他好文 时间:
2015-05-08 21:39:09
阅读次数:
150
完全背包
时间限制:3000 ms | 内存限制:65535 KB
难度:4
描述
直接说题意,完全背包定义有N种物品和一个容量为V的背包,每种物品都有无限件可用。第i种物品的体积是c,价值是w。求解将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大。本题要求是背包恰好装满背包时,求出最大价值总和是多少。如果不能恰好装满背包,输出NO
...
分类:
其他好文 时间:
2015-05-07 16:49:23
阅读次数:
91
简单的多重背包问题,要使设备的体积之和尽量均匀的分成两部分,设总体积为v2 则该问题就转化成了一个背包容量为v/2的多重背包问题费用和价值都为设备的体积,根据num[i] * cost[i] 是否小于 v / 2转化为01背包和完全背包做 1 #include 2 #include 3 #inclu...
分类:
其他好文 时间:
2015-05-01 14:40:15
阅读次数:
99
混合背包(多重背包+完全背包)—— POJ 3260...
分类:
其他好文 时间:
2015-04-28 09:54:09
阅读次数:
130
简单的完全背包。
将三种物品的价格可以理解成既是价值,又是重量。
简单动态规划
AC代码:
#include
#include
using namespace std;
int dp[10005];
int a[3] = {150, 200, 350};
int b[3] = {150, 200, 350};
int max(int x, int y)
{
return x >...
分类:
其他好文 时间:
2015-04-28 09:37:58
阅读次数:
120
题目描述状态 f[i, j] 表示已经决定前 i 种物品的选取,总 need 不超过 j;状态转移方程 f[i, j] = max{f[i, j – need[i]] + val[i], f[i – 1, j]};结果的状态表示为 f[n, m]。注意状态方程与01背包的区别,这个区别反映了物品能取...
分类:
其他好文 时间:
2015-04-27 23:12:55
阅读次数:
92
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&category=114&problem=1406&mosmsg=Submission+received+with+ID+15...
分类:
其他好文 时间:
2015-04-27 19:45:14
阅读次数:
117
刚开始想到的方法复杂度很大,抱着试一试的心态提交了,果然TLE了
然后搜了搜,是个完全背包,好多都不记得了,重新复习了一下。
第一个注释的解法是TLE的,第二个和第三个都是可行的,但思路不同。
#include
#include
#include
using namespace std;
const int inf=0x7fffffff;
#define N 10005
int dp[N],...
分类:
其他好文 时间:
2015-04-26 12:25:17
阅读次数:
134
F - Piggy-Bank
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Submit Status Practice HDU 1114
Description
Before ACM can do anything, a budget must be prepared and the nece...
分类:
其他好文 时间:
2015-04-23 15:48:03
阅读次数:
179