题目大意

有一个容量为vvv的背包,给出nnn件共被分为ttt组的物品,第iii件物品的重量和价值分别为w[i]和c[i]w[i]和c[i]w[i]和c[i],组号为ppp,每组最多只能选一件物品,求在可装入范围内的最大价值总和。

解题思路

对于某组物品,需要考虑是选取1件还是1件都不选,所以f[i][j]f[i][j]f[i][j]就表示当容量为j时前i组物品可以取得的最大价值,所以可得f[i][j]=max(f[i−1][j],f[i−1][j−w[i]]+c[i])f[i][j]=max(f[i-1][j],f[i-1][j-w[i]]+c[i])f[i][j]=max(f[i−1][j],f[i−1][j−w[i]]+c[i])。

代码

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
struct ap{int v,w;
}a[1010][1011];
int n,k,v,f[1050],len[1000],x,y,z;
int main()
{cin>>v>>n>>k;for(int i=1;i<=n;i++){cin>>x>>y>>z;len[z]++;//第z组所拥有的物品数加一a[z][len[z]].v=x,a[z][len[z]].w=y;//存入重量和价值}for(int q=1;q<=k;q++)//枚举k组物品for(int j=v;j>=0;j--)   //枚举容量for(int i=1;i<=len[q];i++)//枚举第q组中的物品{if(j-a[q][i].v>=0) f[j]=max(f[j],f[j-a[q][i].v]+a[q][i].w);}cout<<f[v];return 0;
}

ssl2291 分组背包相关推荐

  1. 分组背包----HDU1712 ACboy needs your help

    很简单的一道分组背包入门问题.不多解释了. 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring&g ...

  2. [bzoj1025][SCOI2009]游戏 (分组背包)

    Description windy学会了一种游戏.对于1到N这N个数字,都有唯一 且不同的1到N的数字与之对应.最开始windy把数字按顺序1,2,3,--,N写一排在纸上.然后再在这一排下面写上它们 ...

  3. HDU 3033 I love sneakers! (分组背包变形)

    题目大意:xx去买鞋,有k种牌子,然后给出n双鞋,每双鞋有它属于的牌子.价格.收藏价值.xx认为他不差钱,要求每种鞋子买一双.但实际上他只有m毛钱,问能否买到符合xx要求的鞋,能找到的话输出最大的收藏 ...

  4. hdu 1712(分组背包)

    题意:有N个课程,然后选择M天内学习的效益最大值,注意每个课程最多选取一次. 解题思路:裸的分组背包,把每门课程看做是每一组,每一组里面最多选择一个天数,典型的分组背包.详见背包九讲 #include ...

  5. hdu 3033(分组背包)

    题意:有S款运动鞋,一个n件,总钱数为m,求不超过总钱数且每款鞋子至少买一双的情况下,使价值最大.如果 有一款买不到,就输出"Impossible". 解题思路:分组背包,和背包九 ...

  6. zcmu2165(分组背包)

    2165: 黄金矿工 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 86  Solved: 41 [Submit][Status][Web Board ...

  7. 2019年湘潭大学程序设计竞赛(重现赛)补题:H.Chat(分组背包)

    链接:https://ac.nowcoder.com/acm/problem/25581 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536 ...

  8. P1064 金明的预算方案(分组背包)

    https://www.luogu.org/problemnew/show/P1064 题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间.更让他高兴的是,妈 ...

  9. 【题解】luogu P1757 通天之分组背包

    分组背包类型 总结: 1.先循环体积,再循环每组内的物品,保证每组物品内只选一次. 若调换位置,有可能每组内物品多选了. 2.num数组记录每组有多少个物品: belong数组记录每组物品的每一个物品 ...

最新文章

  1. ecshop模板的原理分析
  2. spring mvc DispatcherServlet详解之拾忆工具类utils
  3. Travis CI 配置文件 .travis.yml 的语法介绍和一些用法举例
  4. IntelliJ IDEA 连接数据库 详细过程
  5. VS Code的7个开源替代品,值得推荐!
  6. 鹿邑2021高考成绩查询,鹿邑中考成绩查询2021
  7. Intel Core Solo/Duo处理器架构/微架构/流水线 - 前端/数据预取/SSE3
  8. java爬虫出发onclick事件_java爬虫(五)利用selenium 模拟点击获取动态页面的内容...
  9. 【转】NHibernate集合映射中的set, list, map, bag, array
  10. Linux设备驱动程序学习(2)-调试技术
  11. C# 中using的几个用途
  12. 【渝粤教育】电大中专电商运营实操 (16)作业 题库
  13. 手机通过笔记本电脑上网
  14. 红米note5linux刷机包_红米Note5刷机包 MIUI11
  15. 三菱PLC定位控制2
  16. c语言提供三种逻辑运算符,按优先级高低它们分别是,c语言逻辑运算符优先级
  17. 如何获取win10安装驱动
  18. 将笔记本打造成遥控器――远程桌面控制台式机
  19. 上帝或许不掷骰子,但可能会踢足球|图片中的数学之美
  20. linux word 转 pdf 上类似百度文库开发研究与实战

热门文章

  1. 已离职,分享一下和网上的“阿里巴巴”不同的部分
  2. 40款奇特的透明名片设计作品欣赏(下篇)
  3. C#制作简单的本地音乐播放器(二)—— 显示歌词
  4. 截图工具:红晴蜒抓图精灵
  5. 批处理文件实现倒计时关机
  6. 利用:before和:after伪类制作类似微信对话框
  7. 软考中级系统集成项目管理工程师自学好不好过,怎么备考?
  8. 预充电电路工作原理_研究电动汽车预充电过程
  9. 【易社投研资讯】数百家机构抱团调研消费电子声学龙头,公司两大核心业务将保持增长态势
  10. PopStar(消灭星星)游戏源代码下载、分析及跨平台移植---第二篇(算法)