题目传送门
题目描述
自 01 背包问世之后,小 A 对此深感兴趣。一天,小 A 去远游,却发现他的背包不同于 01 背包,他的物品大致可分为 k 组,每组中的物品相互冲突,现在,他想知道最大的利用价值是多少。

输入格式
两个数 m,n,表示一共有 n 件物品,总重量为 m。

接下来 n 行,每行 3 个数 a,b,c
,a表示物品的重量,b利用价值,c所属组数。

输出格式
一个数,最大的利用价值。

输入输出样例
输入
45 3
10 10 1
10 5 1
50 400 2
输出
10
说明/提示
1≤m,n≤1000。

该题为分组背包问题,先在输入时把组号分好,之后与一般dp不同的是先枚举组号,再按一般dp处理

#include<bits/stdc++.h>
using namespace std;
int dp[1000001], a[1002][1002], n, m, k, w[1002], v[1002], z[1002], num;
int main() {cin >> m >> n;for(int i = 1; i <= n; i++) {cin >> w[i] >> v[i] >> k;z[k]++;  //该物品所在的组总数加一num = max(num, k);  //统计最大组a[k][z[k]] = i;  //标记该数是第k组第几个}for(int l = 1; l <= num; l++) {  //每组物品依次遍历for(int j = m; j >= 0; j--) {  //遍历重量 for(int i = 1; i <= z[l]; i++) { //遍历该组所有数据 int px = a[l][i];if(j >= w[px]) {dp[j] = max(dp[j - w[px]] + v[px], dp[j]);}}}}cout << dp[m];}

洛谷P1757 分组背包题解相关推荐

  1. P1757 通天之分组背包题解

    [题目链接] 洛谷P1757 [解题思路] 和题目名一样,本题就是一道分组背包的模板题,我来讲一下分组背包. 其实就是先将说有的数据按照题意分组,再做01背包即可. [CODE] #include&l ...

  2. 洛谷P2507 [SCOI2008]配对 题解(dp+贪心)

    洛谷P2507 [SCOI2008]配对 题解(dp+贪心) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1299251 链接题目地址:洛谷P2507 [S ...

  3. 洛谷P2312 解方程题解

    洛谷P2312 解方程题解 题目描述 已知多项式方程: \[a_0+a_1x+a_2x^2+\cdots+a_nx^n=0\] 求这个方程在 \([1,m]\) 内的整数解(\(n\) 和 \(m\) ...

  4. 洛谷P1273 有线电视网 题解

    洛谷P1273 有线电视网 题解 题目链接:P1273 有线电视网 题意: 某收费有线电视网计划转播一场重要的足球比赛.他们的转播网和用户终端构成一棵树状结构,这棵树的根结点位于足球比赛的现场,树叶为 ...

  5. 洛谷P4568 [JLOI2011] 飞行路线 题解

    洛谷P4568 [JLOI2011] 飞行路线 题解 题目链接:P4568 [JLOI2011] 飞行路线 题意: Alice 和 Bob 现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公 ...

  6. 洛谷P3426 [POI2005]SZA-Template 题解

    洛谷P3426 [POI2005]SZA-Template 题解 题目链接:P3426 [POI2005]SZA-Template 题意:你打算在纸上印一串字母. 为了完成这项工作,你决定刻一个印章. ...

  7. 洛谷P1156 垃圾陷阱 题解浅谈刷表法与填表法

    洛谷P1156 垃圾陷阱 题解&浅谈刷表法与填表法 填表法 :就是一般的动态规划,当前点的状态,可以直接用状态方程,根据之前点的状态推导出来. 刷表法:由当前点的状态,更新其他点的状态.需要注 ...

  8. 洛谷P1262 间谍网络题解

    洛谷P1262 间谍网络题解 题目大意 题目描述 由于外国间谍的大量渗入,国家安全正处于高度的危机之中.如果 A 间谍手中掌握着关于 B 间谍的犯罪证据,则称 A 可以揭发 B.有些间谍收受贿赂,只要 ...

  9. 【洛谷P3960】列队题解

    [洛谷P3960]列队题解 题目链接 题意: Sylvia 是一个热爱学习的女孩子. 前段时间,Sylvia 参加了学校的军训.众所周知,军训的时候需要站方阵. Sylvia 所在的方阵中有 n×m ...

最新文章

  1. java web 怎么用solr_使用web过滤器增加solr后台登录验证
  2. pt-online-schema-change中update触发器的bug
  3. 计算机组成原理——概述
  4. 3PAR副总裁谈09年存储虚拟化
  5. CSS三角制作(HTML、CSS)
  6. 如何在 Mac 上查找路由器 IP 地址?
  7. nullnullvc中加花
  8. ctags linux,ctags --- 每天一个 Linux 命令
  9. 获取枚举类型的字符串
  10. 【雷达与对抗】【2004.05】合成孔径雷达X波段发射机和频率分配单元的设计与实现
  11. 萤石摄像头实现web端监控预览以及录像回放
  12. HTML背景颜色为什么改变不了,css背景颜色不显示怎么解决
  13. 如何安装CentOS7.5
  14. 如何入门Python之Python基础教程详解
  15. Docker 下 jitsi-meet 视频服务器 安装部署
  16. python开发的项目管理软件_10 个超好用的免费开源项目管理软件
  17. MySQL-V5.7 压缩包版安装教程
  18. Bullshit Bingo
  19. Coding and Paper Letter(五十三)
  20. linux awk 排序,利用Shell中awk和sort命令合并同类数据后并依据某一列进行排序

热门文章

  1. 零基础学习HTML5
  2. Stetho 源码分析
  3. 【转】markdown表格中转义 “ | “符号
  4. 在谈声子谱计算的运动方程方法和动力学矩阵方法
  5. 【Google Play】内部测试版本分发设置 ( 测试链接 | 配置测试权限 | 下载测试应用 )
  6. 有关支付宝的沙箱环境
  7. Feign使用JPA分页类Page和Pageable抛出序列化异常
  8. 制作抓取APP崩溃和无响应日志的小工具
  9. MBSE建模学习之一:说说模块(Block)
  10. Python学习之路--Flask+MongoDB搭建Restful Server