【动态规划】01背包问题-练习题-采药
题目描述
辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”
如果你是辰辰,你能完成这个任务吗?
输入格式
第一行有 22 个整数 TT(1 \le T \le 10001≤T≤1000)和 MM(1 \le M \le 1001≤M≤100),用一个空格隔开,TT 代表总共能够用来采药的时间,MM 代表山洞里的草药的数目。
接下来的 MM 行每行包括两个在 11 到 100100 之间(包括 11 和 100100)的整数,分别表示采摘某株草药的时间和这株草药的价值。
输出格式
输出在规定的时间内可以采到的草药的最大总价值。
输入输出样例
输入 #1 复制
70 3
71 100
69 1
1 2
输出
3
题解代码
跟上一个问题一致都是简单的01背包问题
#include<iostream>
using namespace std;int t,m;
int ti[10001],v[10001];
int f[10001][10001];
//01背包
int main(){cin>>t>>m;for(int i=1;i<=m;i++)cin>>ti[i]>>v[i]; for(int i=1;i<=m;i++)for(int j=1;j<=t;j++){if(j>=ti[i])f[i][j]=max(f[i-1][j],f[i-1][j-ti[i]]+v[i]);else f[i][j]=f[i-1][j];}/*一维的int t[101] ,f[1001];for(int i=1;i<=m;i++)for(j=t;j>=t[i];j--) f[j]=max(f[j],f[j-ti[i]]+p[i]);*/cout<<f[m][t];return 0;
}
【动态规划】01背包问题-练习题-采药相关推荐
- 【动态规划】P1048 01背包问题:采药
时间对应容量,用01背包 [动态规划笔记]01背包问题及优化_m0_52043808的博客-CSDN博客 代码: #include<iostream> using namespace st ...
- 动态规划—01背包问题
原文作者:弗兰克的猫 原文地址:[动态规划]01背包问题 摘要: 01背包问题:n个物品放入容量为c的背包中. 常见解法: 分治法:递归计算,且存在重复计算的bug 自上而下填表法:从大到小使用递归计 ...
- 动态规划——0-1背包问题
文章出处:极客时间<数据结构和算法之美>-作者:王争.该系列文章是本人的学习笔记. 1 0-1背包问题 背包能够承受的总重量一定w,每个物品的总量不同int[] weight表示.怎么放才 ...
- 动态规划——01背包问题 看此一篇文章就够了
本文讲述经典算法--动态规划的 常见问题 01背包 一篇文章带你学会01背包问题,妈妈再也不担心我遇到01背包了!!! 问题描述 有n个物品,它们有各自的体积和价值,现有给定容量m的背包,如何让背包 ...
- 动态规划---01背包问题(2种方法)
一.动态规划 代表一类问题(最优子结构或子问题最优性)的一般解法,是设计方法或者策略,不是具体算法 本质:递推,核心是找到状态转移的方式,写出dp方程. 解决问题:交叉,重叠子问题(最优子问题) 形式 ...
- 动态规划01背包问题入门学习,详细笔记,推荐阅读
问题描述: 给定N种物品和一个背包.物品i的重量是Wi,其价值位Vi ,背包的容量为C.问应该如何选择装入背包的物品,使得转入背包的物品的总价值为最大?? 在选择物品的时候,对每种物品i只有两种选择, ...
- python实现动态规划0-1背包问题
一.动态规划算法介绍 动态规划算法通常用于求解具有某种最优性质的问题.在这类问题中,可能会有许多可行解.每一个解都对应于一个值,我们希望找到具有最优值的解.动态规划算法与分治法类似,其基本思想也是将待 ...
- 详解动态规划01背包问题--JavaScript实现
对其他动态规划问题感兴趣的,也可以查看 详解动态规划最少硬币找零问题--JavaScript实现 详解动态规划最长公共子序列--JavaScript实现 一开始在接触动态规划的时候,可能会云里雾里,似 ...
- 动态规划--01背包问题详解
代码随想录day42和day43 动态规划 模块01背包问题 "即使到不了远方,心中也要有远方的模样." 文章目录 1. 01背包理论基础 1.1什么是背包问题 1.2二维dp数组 ...
最新文章
- 如何用php向wsdl服务器发请求,知道服务器端Wsdl,不写服务端代码,仅写客户端代码能调用服务端的方法吗?...
- 福建高职单招计算机基础知识,福建高职单招计算机类试题及标准答案
- VC学习笔记 -单选按钮控件(Ridio Button)的使用
- mysql 介绍 知乎_SQL介绍——Mysql
- Activity 模版样式简介
- html5实例绘制时钟代码,使用html5 canvas 画时钟代码实例分享
- 树莓派专用msata硬盘转接板
- 什么音频剪辑软件好用?
- [原创]WIA 学习笔记
- 《安富莱嵌入式周报》第280期:支持在线仿真编程的网页版电子开发,CAN总线防攻击实现,BigFAT 规范打破了 FAT 每个文件 4GB 的限制
- 粗糙集理解之二:属性约简
- 如何找到精美联想锁屏壁纸?
- 明明可以靠脸吃饭偏要靠才华_你身边有女神程序员吗?
- 关于 右键新建选项 假死 死机 卡机 崩溃 闪退 的问题 (含 无法拖拽文件 或者ps无法拖拽等)
- WPS技巧之保护工作表实现允许部分单元格输入内容
- 在html循环字母,怎么样能遍历一个字符串
- ICLR 2022 | 基于对抗自注意力机制的预训练语言模型
- html,vue, react,angular 前端实现二维码生成 ,二维码解析
- html里副标题subtitle,Highcharts教程(15) title标题、subtitle副标题
- 2021-11-02 PAT厘米换算英尺英寸
热门文章
- 大型欧姆龙PLC NJ系列ST语言Ethercat总线24轴 伺服电池生产线欧姆龙PLC程序大型程序NJ系列
- 宝文理计算机分数位次,2017高考位次换算(2019高考分数线排名)
- 你说的等保3.0,是不是等保三级测评
- 最广泛使用的服务器软件爆出网络安全漏洞
- 如何设置微信公众号粉丝关注后自动推送小程序
- android http 网关,安卓平台上实现基于HTTP协议数据网关的方法
- Android手机扫描,电脑复制内容----手机实现无线扫码枪功能
- pandorabox php,Openwrt Pandorabox 挂载摄像头 定时拍照上传百度网盘,实现实时监控(优酷路由宝)...
- 国家基金申请书中的科学问题与关键问题
- 计算机专业教师资格证考什么内容,计算机教师资格证需要考什么?信息技术教师资格证考试内容...