NY 完全背包 311
- 描述
-
直接说题意,完全背包定义有N种物品和一个容量为V的背包,每种物品都有无限件可用。第i种物品的体积是c,价值是w。求解将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大。本题要求是背包恰好装满背包时,求出最大价值总和是多少。如果不能恰好装满背包,输出NO
- 输入
-
第一行: N 表示有多少组测试数据(N<7)。
接下来每组测试数据的第一行有两个整数M,V。 M表示物品种类的数目,V表示背包的总容量。(0<M<=2000,0<V<=50000)
接下来的M行每行有两个整数c,w分别表示每种物品的重量和价值(0<c<100000,0<w<100000) - 输出
- 对应每组测试数据输出结果(如果能恰好装满背包,输出装满背包时背包内物品的最大价值总和。 如果不能恰好装满背包,输出NO)
- 样例输入
-
2 1 5 2 2 2 5 2 2 5 1
- 样例输出
-
NO
1
-
思路:基本同0/1背包,就是循环的顺序发生了一些改变,注意对dp[i]的初值处理的问题。AC代码如下:
-
#include<bits/stdc++.h> #include<iostream> #define Maxn 100002 #include<string.h> #include<algorithm> using namespace std; int dp[Maxn]; struct { int Wi,Pi; }node[50000]; int main(){int t;cin>>t;while(t--){int N,W;memset(dp,-100,sizeof(dp));dp[0]=0;cin>>N>>W; for(int i=1;i<=N;i++) cin>>node[i].Wi>>node[i].Pi; for(int i=1;i<=N;i++){ for(int j=node[i].Wi;j<=W;++j){ dp[j]=max(dp[j],dp[j-node[i].Wi]+node[i].Pi); } } if(dp[W]>=0)cout<<dp[W]<<endl;elsecout<<"NO"<<endl; } return 0; }
NY 完全背包 311相关推荐
- NYOJ 311 完全背包
完全背包 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 直接说题意,完全背包定义有N种物品和一个容量为V的背包,每种物品都有无限件可用.第i种物品的体积是c,价值是w. ...
- NYOJ 311 完全背包
#include<stdio.h> #include<string.h> const int max=50001; int dp[max]; #define max(a,b) ...
- 【算法】动态规划+“背包九讲”原理超详细讲解+常见dp问题(9种)总结
目录 一.动态规划(DP) 二.背包九讲 (1)完全背包 P1616 疯狂的采药(完全背包) (2)01背包 滚动数组 一维数组 P1048 采药(01背包) 01背包表格图示 (3)多重背包 整数拆 ...
- 【01背包】最大约数和(jzoj 2126)
最大约数和 题目大意: 选若干个正整数,和不小于S,使每个数的因数(不包括本身)之和最大 样例输入 11 样例输出 9 数据范围限制 对于30%的数据, S<=10: 对于100%的数据, S ...
- [NKNY]寒假培训《NY寒假有奖欢乐赛 》总结
说明 NY寒假有奖欢乐赛 类别 日常作业题目列表 考试规则 信息学奥赛规则 开始时间 2022/1/22 9:00:00 结束时间 2022/1/22 12:20:00 总时长 3小时 20分钟 参考 ...
- 洛谷 P4389 付公主的背包 多项式exp
题目描述 这个背包最多可以装10510^5105大小的东西 付公主有nnn种商品,她要准备出摊了 每种商品体积为ViV_iVi,都有10510^5105件 给定mmm,对于s∈[1,m]s\in [ ...
- HDU 1248 寒冰王座(全然背包:入门题)
HDU 1248 寒冰王座(全然背包:入门题) http://acm.hdu.edu.cn/showproblem.php?pid=1248 题意: 不死族的巫妖王发工资拉,死亡骑士拿到一张N元的钞票 ...
- 单调队列多重背包时间复杂度O(vn)
版权声明:本文为博主原创文章,未经博主允许不得转载. 多重背包问题: 有N种物品和容量为V的背包,若第i种物品,容量为v[i],价值为w[i],共有n[i]件.怎样装才能使背包内的物品总价值最大? 网 ...
- 浅说——九讲背包之01背包
所谓九讲,也就是: 0/1背包 0/1背包降维 完全背包 多重背包(二进制优化) 混合背包 二维费用背包 分组背包 有依赖的背包 背包的方案总数\背包的具体方案路径 0/1背包: [问题描述](经典) ...
最新文章
- iOS中常见的图片压缩方法
- android m版本 root,Android M 最大看点:又少了一个 ROOT 的理由
- wxWidgets:wxWebView类用法
- 九个步骤让你成为PHP专家
- Java进击C#——应用开发之Asp.net MVC
- SQLServer当数据导入平面文件
- mysql数据库行业应用_腾讯云发布MySQL 8.0数据库 可应用至更多行业场景
- ASP.NET Core IHostEnvironment和IApplicationLifetime介绍
- 分布式系统原理 之5 日志技术
- 分享几个路由器设置小技巧,总有用得到的一天!
- 如何正确的通过 C++ Primer 学习 C++?(转自知乎)
- 使用supervisor使Laravel的queue保持后台常驻
- 【转】前端开发必备网站
- android 布局长度单位深入研究
- 【C++】大小端转换
- 【应用统计学】简单随机抽样的区间估计和样本容量的确定
- OpenWRT配置 -- 网络配置network文件
- 移动硬盘损坏怎么恢复?看完再也不怕丢失数据
- php guzzle的基本使用
- OsgEarth中设置模型运动路径,并绘制雷达扫描、动态实时绘制运动轨迹、跟随彩带
热门文章
- moment js常用格式化
- C++ Primer 学习笔记14 顺序容器
- 太阳能控制器负载无电压
- Java Cglib 动态代理intercept的参数含义
- 使用Grafana+Prometheus配置服务器监控
- 昆仑通态触摸屏通讯ABB ACS530变频器恒压供水 ABB变频器恒压供水触摸屏通讯程序
- WinRAR 5.91(64位) 去除广告弹框
- python怎么写翻译器_书写一个翻译器-python
- 读书笔记.:硝烟中的Scrum和XP
- 关于联咏(novatek)平台上使用NAND Flash的问题