【模板】分组背包
2017-09-11 14:30
120 查看
哇竟然把动态规划写进了模板
基本介绍
模板题目
代码实现
直达通天路·小A历险记第二篇
题目描述
自01背包问世之后,小A对此深感兴趣。一天,小A去远游,却发现他的背包不同于01背包,他的物品大致可分为k组,每组中的物品相互冲突,现在,他想知道最大的利用价值是多少。
输入输出格式
输入格式:
两个数m,n,表示一共有n件物品,总重量为m
接下来n行,每行3个数ai,bi,ci,表示物品的重量,利用价值,所属组数
输出格式:
一个数,最大的利用价值
输入输出样例
输入样例:
45 3
10 10 1
10 5 1
50 400 2
输出样例:
10
说明
1<=m<=1000 1<=n<=1000 组数t<=100
基本介绍
模板题目
代码实现
基本介绍
分组背包 就是物品带组别的 一个组的不能重复选之类的模板题目
题目背景直达通天路·小A历险记第二篇
题目描述
自01背包问世之后,小A对此深感兴趣。一天,小A去远游,却发现他的背包不同于01背包,他的物品大致可分为k组,每组中的物品相互冲突,现在,他想知道最大的利用价值是多少。
输入输出格式
输入格式:
两个数m,n,表示一共有n件物品,总重量为m
接下来n行,每行3个数ai,bi,ci,表示物品的重量,利用价值,所属组数
输出格式:
一个数,最大的利用价值
输入输出样例
输入样例:
45 3
10 10 1
10 5 1
50 400 2
输出样例:
10
说明
1<=m<=1000 1<=n<=1000 组数t<=100
代码实现
#include<iostream> #include<cstdio> #include<cctype> using namespace std; #define in = read() typedef long long ll; const ll size = 1000 + 10; ll n,m; ll a[size],b[size],c[size][size]; ll cc,tm; ll f[size]; inline ll read(){ ll num = 0 , f = 1; char ch = getchar(); while(!isdigit(ch)){ a51b if(ch == '-') f = -1; ch = getchar(); } while(isdigit(ch)){ num = num*10 + ch - '0'; ch = getchar(); } return num*f; } int main(){ m in; n in; for(ll i=1;i<=n;i++){ a[i] in; b[i] in; cc in; c[cc][++c[cc][0]] = i; tm = max(tm,cc); } for(ll i=1;i<=tm;i++) for(ll j=m;j>0;j--) for(int k=1;k<=c[i][0];k++) if(j >= a[c[i][k]]) f[j] = max(f[j],f[j - a[c[i][k]]] + b[c[i][k]]); printf("%d",f[m]); } //COYG
相关文章推荐
- HDU 1712 ACboy needs your help(分组背包模板题)
- hdu1712ACboy needs your help 分组背包模板题
- POJ 1155 经典树形dp+分组背包 + 模板
- ACboy needs your help-分组背包模板题
- 分组背包模板
- HDU 1712 ACboy needs your help 分组背包模板
- HDU1712:ACboy needs your help(分组背包模板)
- HDU - 1712ACboy needs your help(分组背包模板题)
- D. Arpa's weak amphitheater and Mehrdad's valuable Hoses 分组背包模板题
- ACboy needs your help-分组背包模板题
- HDU1712(分组背包) HDU3496(二维背包)
- hdu 1712 分组背包 每组至多取一个背包
- hdu 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包模板题)
- LightOJ 1231 Coin Change (I) (背包计数模板题)
- ZOJ 3201 Tree of Tree(树形dp + 分组背包)
- zoj 3164 Cookie Choice (分组混合背包)
- 洛谷P1273 有线电视网 【树上分组背包】
- HDU3535 - AreYouBusy(混合背包+两种分组背包)
- 动态规划-背包模板
- POJ 1276 Cash Machine ( 多重背包模板题目 )