codeforces 148E Porcelain(DP, 分组背包)
2015-03-09 18:01
477 查看
题意:
有n个数列。要从这n个数列中取m个数,要求值最大。
思路:
每个数列的大小为si, 则可以从中取[1,si]个。
理解了这是一个分组背包的模型后。。就很赤裸了。。
有n个数列。要从这n个数列中取m个数,要求值最大。
思路:
每个数列的大小为si, 则可以从中取[1,si]个。
理解了这是一个分组背包的模型后。。就很赤裸了。。
rep(r, 1, n) { scanf("%d", &t); rep(i, 1, t) scanf("%d", a+i); rep(i, 1, t) pre[i] = pre[i-1]+a[i]; rep(i, 1, t) suf[i] = suf[i-1]+a[t-i+1]; rep(i, 1, t) { v[i] = 0; rep(j, 0, i) v[i] = max (v[i], pre[j]+suf[i-j]); } urep(w, m, 1) { for (int i=1;i<=t && i<=w;++i) dp[w] = max (dp[w], dp[w-i] + v[i]); } } printf("%d", dp[m]);
相关文章推荐
- CodeForces - 148E Porcelain (预处理,背包, dp)
- Codeforces 148E Porcelain [预处理+dp背包]
- Codeforces 148E Porcelain (预处理+多重背包)
- Codeforces 148E Porcelain (dp)
- codeforces 148E Porcelain (dp)
- codeforces-148E-Porcelain【DP】
- codeforces 148E Porcelain 多重背包
- codeforces 946 D Timetable(预处理+分组背包)
- Codeforces 730 J. Bottles DP 0-1背包- 2016-2017 ACM-ICPC, NEERC, Southern Subregional Contest
- (中等) 树形dp(分组背包) POJ 3345 Bribing FIPA
- D - Find Metal Mineral 树上的分组背包dp
- hdu4341 Gold miner 分组背包dp
- 【codeforces 946D】Timetable(预处理+分组背包)
- CodeForces - 808E-K - Selling Souvenirs-DP(像背包但不是背包)+优化技巧
- hdu 3033 I love sneakers!【详剖 DP 之 分组背包 】
- codeforces 543A A. Writing Code(完全背包优化dp )
- HDU--1712--ACboy needs your help--分组背包/DP
- codeforces_946D_Timetable(分组背包)
- HDU 4003 (树形DP + 分组背包)
- poj1947 ----- 树形DP - 分组背包做法