动态规划之最大草药价值
Description
小K是个苦命的孩子,他的师傅为了多赚钱,以减肥为理由,让他去采药,并说不完成不能吃饭。野地里有许多不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。要求在规定的时间t里,采到的草药的总价值最大。
Input
第一行有2个整数T(1≤T≤1000)和M(1≤M≤100),一个空格隔开,T代表总共能够用来采药的时间,M代表山洞里的草药的数目
接下来的M行每行包括两个在1到100之间包括1和100)的整数,分别表示采摘某株草药的时间和这株草药的价值。
第二行共有n个整数。
Output
1个整数,表示在规定的时间内可以采到的草药的最大总价值。
Sample Input
70 3
71 100
69 1
1 2
Sample Output
3
#include<iostream>
#include<cstring>
using namespace std;
const int maxn = 1000 + 10;int dp[maxn][maxn]; // dp[i][j]表示剩下时间为j第i个物品的最大价值
int time[maxn], value[maxn];
int t, m;int main()
{cin >> t >> m;memset(time, 0, maxn);memset(value, 0, maxn);for(int i=1; i<=m; i++){cin >> time[i] >> value[i];}for(int i=1; i<=m; i++){for(int j=1; j<=t; j++){if(j<time[i]) // 所剩下的时间不足以采摘这个草药 dp[i][j] = dp[i-1][j];elsedp[i][j] = max(dp[i-1][j], dp[i-1][j-time[i]]+value[i]); }}cout << dp[m][t] << endl;return 0;
}
动态规划之最大草药价值相关推荐
- 问题 A: 【动态规划】采药_二维数组_一维数组
问题 A: [动态规划]采药 时间限制: 1 Sec 内存限制: 64 MB 提交: 35 解决: 15 [提交][状态][讨论版] 题目描述 山洞里有一些不同的草药,采每一株都需要一些时间,每一 ...
- 采药问题 c语言程序,采药-动态规划题解(C语言代码)
一看到题就发现这是动态规划,题目要求最大获利之类的时候也一般想到动态规划,动态规划的题就是用空间换取时间,建立一个表存储需要重复计算的自问题,表的最后一项的值就是我们要求的最优值. 动态规划的题先分析 ...
- c++ 动态规划-01背包
动态规划 - 01背包问题 1.使用递归遍历(穷举)求解: 01背包问题:给定 n 种物品和一个重量(容量)(限定条件)为 w 的背包,物品 i 的重量是 wi,其价值为 vi.(每种物品只有一个)问 ...
- 【**背包dp**】
目录 一.概述 二.分类 三.01背包 01背包模板 采药 开心的金明 小A点菜 装箱问题 榨取kkksc03 严酷的训练 L国的战斗之间谍 音量调节 精卫填海 四.完全背包 完全背包模板 疯狂的采药 ...
- 《强化学习周刊》第2期:多智能体强化学习(MARL)赋能“AI智能时代”
No.02 智源社区 强化学习组 R L 学 习 研究 观点 资源 活动 关于周刊 随着强化学习研究的不断成熟,如何将其结合博弈论的研究基础,解决多智能体连续决策与优化问题成为了新的研究领域,为了帮 ...
- Schrödinger's Knapsack ZOJ - 4019 线性DP
题意:有背包容量为c 给出两个数串 表示两种不同的物品 从物品中任意选多个数 价值是背包剩余空间*选择元素所属数串的系数 问 最大价值 分析: 表面上看起来是个背包题 但是空间太大导致不能背 这里发 ...
- 背包问题学习笔记(二)
0-1背包问题解决代码,腾讯的试题中,只需将物品的价值与物品的重量取一样的值即可. PackProblemClass.h: // PackProblemClass.h: interface for t ...
- 强化学习代码实操和讲解(三)
强化学习代码实操和讲解(三) 引言 杰克租车问题 重点代码解析 环境设置 poisson_probability:泊松概率的计算 expected_return:根据给定策略进行策略评估 figure ...
- 采药问题 c语言程序,采药 题解
[问题描述] 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为此,他想拜附近最有威望的医师为师.医师为了判断他的资质,给他出了一个难题.医师把他带到一个到处都是草药的山洞里对他说:&quo ...
最新文章
- nodejs模块加载分析(1).md
- Linux下常用服务的端口号超详细整理
- JPA保存数据异常:org.hibernate.AnnotationException: @COLUMN(s) NOT allowed ON a @ManyToOne property
- Spring3注解@Component、@Repository、@Service、@Controller区别
- Little Sub and Apples
- 计算机文化基础在线作业答案,中国石油大学17年秋《计算机文化基础》第一次在线作业答案...
- iOS打包,证书配置等
- 手上红白点的中药药方
- 【设计模式】设计模式C++编程实现之观察者模式(ObserverPattern)
- Selenium常用API的使用java语言之1-环境安装之Java
- linux shell网卡,Shell脚本查看LINUX系统 网卡实时流量
- 用C语言程序编写字体,程序员都爱用这些字体写代码!
- loadRunner之中文语言包安装
- opencv 安装及配置
- 做自媒体必备的神器:文章相似度检测工具
- PS(Photoshop)去水印的4个方法
- DELPHI读取网页源文件和获取字符串
- winedit使用教程_基础教程:BCDEDIT常用命令及使用实例(图)
- mybatis拦截器添加额外参数
- 程序猿生存指南-60 一晌贪欢