【题解】luogu P1757 通天之分组背包
分组背包类型
总结:
1.先循环体积,再循环每组内的物品,保证每组物品内只选一次。
若调换位置,有可能每组内物品多选了。
2.num数组记录每组有多少个物品;
belong数组记录每组物品的每一个物品的序列号是多少
很巧妙的方法
#include<bits/stdc++.h> using namespace std; int dp[1005], val[1005], w[1005], num[1005], belong[101][20]; int maxx, m, n, a, b, c; int main() {cin >> m >> n;for(int i = 1; i <= n; i++){cin >> a >> b >> c;val[i] = b;w[i] = a;maxx = max(maxx, c);num[c]++;belong[c][num[c]] = i;}for(int i = 1; i <= maxx; i++)for(int j = m; j >= 0; j--)for(int k = 1; k <= num[i]; k++)if(j >= w[belong[i][k]])dp[j] = max(dp[j], dp[j-w[belong[i][k]]]+val[belong[i][k]]);cout << dp[m];return 0; }
转载于:https://www.cnblogs.com/lovezxy520/p/11348386.html
【题解】luogu P1757 通天之分组背包相关推荐
- 【背包DP练习】洛谷 P5020货币系统 P1757通天之分组背包 P1064[NOIP2006 提高组]金明的预算方案 P5322 [BJOI2019]排兵布阵
洛谷 P5020货币系统 https://www.luogu.com.cn/problem/P5020 思路是把货币从小到大排序,然后按顺序依次完全背包dp,每次dp检查i-1种面值的货币能不能凑出第 ...
- 洛谷 P1757 通天之分组背包
P1757 通天之分组背包 题目背景 直达通天路·小A历险记第二篇 题目描述 自01背包问世之后,小A对此深感兴趣.一天,小A去远游,却发现他的背包不同于01背包,他的物品大致可分为k组,每组中的物品 ...
- 洛谷P1757 通天之分组背包 [2017年4月计划 动态规划06]
P1757 通天之分组背包 题目背景 直达通天路·小A历险记第二篇 题目描述 自01背包问世之后,小A对此深感兴趣.一天,小A去远游,却发现他的背包不同于01背包,他的物品大致可分为k组,每组中的物品 ...
- P1757 通天之分组背包
P1757 通天之分组背包 背包中的经典问题,我竟然不知道. 分组背包 就是每个物品有一个所属的小组,小组内的物品会冲突. 就是把01背包中的两个for换一下位置 01: for(i,1,kind) ...
- P1757 通天之分组背包题解
[题目链接] 洛谷P1757 [解题思路] 和题目名一样,本题就是一道分组背包的模板题,我来讲一下分组背包. 其实就是先将说有的数据按照题意分组,再做01背包即可. [CODE] #include&l ...
- 洛谷 p1757 通天之分组背包(哈希,分组背包)2021-08-12
题目背景 直达通天路·小 A 历险记第二篇 题目描述 自 01 背包问世之后,小 A 对此深感兴趣.一天,小 A 去远游,却发现他的背包不同于 01 背包,他的物品大致可分为 k 组,每组中的物品相互 ...
- 洛谷P1757 通天之分组背包
题目链接:点击进入 思路 分组背包,套板子 代码 #include<iostream> #include<string> #include<map> //#incl ...
- P1757 通天之分组背包(动态规划 分组背包)
思路:这就是一个分组背包的模板题 #include <bits/stdc++.h> using namespace std; int v,n,t; int x,tot=0; int g[2 ...
- 洛谷 P1757 通天之分组背包 C++ dp
题目背景 直达通天路·小 A 历险记第二篇 题目描述 自 0101 背包问世之后,小 A 对此深感兴趣.一天,小 A 去远游,却发现他的背包不同于 01 背包,他的物品大致可分为 k 组,每组中的物品 ...
最新文章
- 淘宝李晓拴:淘宝网PHP电子商务应用
- 使用栈Stack实现队列Queue
- 添加到package_pycharm里面添加镜像库
- axios怎么封装,才能提升效率?
- 对列表中k之前和之后的元素分别进行逆序
- Android BroadcastReceiver示例教程
- python logging打印终端_python中那些小众但有用的自带标准库
- 自定义Json解析工具
- R_空间插值_必知必会(二)
- 作用 和会话期 进程组_进程 进程组 会话的关系及作用
- WinDbg 入门教程
- sqlite创建表格
- 大数据运维架构师培训(4):Oozie,Flume,Sqoop,Azkaban,Ranger
- 在MacOS上安装MacTex
- [BUGKU] [MISC]普通的二维码
- RAID 磁盘阵列与阵列卡
- vultr 安装docker
- 中国鼠标行业销售动态及营销形势分析报告(新版)2022-2027年
- 百度聚合时,label文字隐藏问题
- Jeet – 先进,直观,灵活的 CSS 网格系统
热门文章
- python人工智能——机器学习——特征工程
- 大数据WEB阶段总结
- 【前端2】js:原始类型,运算符,调试,页面加载,轮播图,Bom(对象,时钟),Dom(全选全不选,省市级联,隔行/触摸换色,表单校验)
- 【机器视觉】 measure_pairs算子
- 【Centos】Centos7.5取消自动锁屏功能
- python就业前景如何_2020年Python就业前景如何?就业岗位多不多?薪资高不高?...
- 关于jsp web项目,jsp页面与servlet数据不同步的解决办法(报错404、405等)即访问.jsp和访问web.xml中注册的/servlet/的区别
- oracle创建包 和调用,oracle创建函数和调用存储过程和调用函数的例子(区别)...
- php写文件 效率,php中读写文件与读写数据库的效率_PHP教程
- 1030 完美数列 (25 分)(c语言)