//使用动态规划的方式进行解题
//首先依然是使用一个二维数组作为表示各个状态的容器
//之后i,j分别表示的是状态i以及当前的剩余时间j
//因此每一个状态的情况考虑上面就可以最多有j<=总时间种
//再仔细分析各个状态之间的状态:对每种不同的药材都要进行比对在跟新状态之后是否与未更新前的那个状态价值更高
//选取其中价值更高的一项再进行状态转换
#include "iostream"
#include "cstring"
using namespace std;
int f[1000][1000];
int main(){
int n,m;
int _max=0;//存储最大值
int ti,vl;
cin>>n>>m;
memset(f[0], 0, sizeof(f[0]));
for (int i = 1; i <= m; ++i)
{
cin>>ti>>vl;//遍历药材
for (int j = 0; j <= n; ++j)//每个时间点可能都要初始化和遍历到
{
f[i][j]=f[i-1][j];//如果没有合适的时间点就保持原状态
if(j>=ti){//当时间剩余合适时
f[i][j]=max(f[i-1][j-ti]+vl,f[i][j]);//选取上一原状态与增加了新药材状态之间价值更大的一项
}
if(_max<f[i][j]){
_max=f[i][j];//更新总价值
}
}
}
cout<<_max<<endl;
}相关推荐
SCL3400硬件避坑指南:引脚兼容性测试+模式切换异常处理
本文针对村田SCL3400双轴倾角计在实际硬件设计中的常见问题,提供了详细的避坑指南。重点解析了从SCL3300迁移时的引脚兼容性真相,包括SPI时序、电源去耦等关键差异,并深入探讨了模式切换中超量程错误的复现原因与软件容错方案。同时,指导了如何根据应用场景配置低通滤波器,并给出了无自动唤醒功能下的可靠电源与长线SPI通信管理策略。
采药问题
【问题描述】 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。” 如果...
基于ESP32-WROOM的智能蓝牙电压电流监测与远程控制系统设计
本文介绍了基于ESP32-WROOM的智能蓝牙电压电流监测与远程控制系统设计。该系统集成了INA219传感器和OLED显示屏,通过蓝牙实现无线数据传输和远程控制,适用于智能家居能耗监控和工业设备管理,具有成本低、精度高、功耗优化等优点。
四种背包问题(01和完全)
E. 苹果 Time Limit: 3000ms Memory Limit: 128000KB 64-bit integer IO format: Java class name: Submit Status ctest有n个苹果,要将它放入容量为v的背包。给出第i个苹果的大小和价钱,求出能放入背包的苹果的总价钱最大值。 Inp
利用Matlab实现矩形波导电磁场分布图的绘制
1.利用Matlab实现矩形波导电磁场分布图的绘制;2.学会使用 Matlab 进行数值计算,并绘出相应的图形;通过Matlab 计算并绘出任意时刻金属矩形波导的主模 TE10 模的电磁场分布图。波导尺寸、工作频率及时刻均由外部给定。(1)矩形波导中传输的主模为TE10模。设金属波导尺寸为a*b,TE10模的截止波长为2*a。其电磁场分量可推导表示如下:.......1-1上式中各参量如下:......1-2。
第四届“网鼎杯”网络安全大赛 - 青龙组
第四届“网鼎杯”网络安全大赛 - 青龙组
动态规划-问题示例与解题思路(采药问题 - nefu19)
题目: 有一个药圃中种了一些药材,采摘不同药材需要不同的时间,可以获得不同的收益,问在给定时间T内,采摘药材可以获得的最高的收益! * 输入: 第一行输入两个整数T和M,分别为给定时间和药材的数量;第2至第M+1行输入药材的采摘时间t和价值* eg: 70 3 71 100 69 1 1 2 输出: 3解题思路: 设想在给定的时间t中,用了t1时间来采摘一定的药材
使用Xpath语法爬取豆瓣读书Top250
使用Xpath语法爬取豆瓣读书Top250 使用的软件是Spyder 网页地址:https://book.douban.com/top250?start=0 直接上代码: # -*- coding: utf-8 -*- """ Created on Thu Apr 30 18:35:17 2020 @author: ASUS """ import requests import csv fr...
动态规划-采药问题 [原题+题解]
这里的采药问题是一个典型的0-1背包。 原题(引用OPEN JUDGE) 1775:采药 总时间限制: 1000ms 内存限制: 65536kB 描述辰辰是个很有潜能、天资聪颖的孩子,他的梦想是称为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到个到处都是草药的山洞里对他说:“孩
从谱峰搜索到多项式求根:Root-MUSIC算法原理与MATLAB实践
本文深入解析Root-MUSIC算法在阵列信号处理中的原理与应用,通过多项式求根替代传统MUSIC算法的谱峰搜索,显著提升计算效率和精度。文章详细介绍了算法核心思想、MATLAB实现步骤及工程优化技巧,帮助读者掌握这一高效的DOA估计方法。
【PINN物理信息网络】基于PINN物理信息网络结合Wave 2D有限差分方法(python)
【PINN物理信息网络】基于PINN物理信息网络结合Wave 2D有限差分方法(python)
[NOIP2005] 采药-解题报告
[NOIP2005] 采药★ 输入文件:medic.in 输出文件:medic.out 简单对比 时间限制:1 s 内存限制:128 MB问题描述辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,
乐企增值税及附加税费(一般纳税人适用)申报表填报能力说明文档V3.009
申报表填报,是指企业在自有业务系统中将算税结果数据按预填规则要求加工汇总后,进行申报表填报的过程。申报表填报前对纳税申报所需的前提条件进行校验。校验通过后,应用前序算税结果数据及预填规则进行纳税申报表预填,生成申报表数据。申报表数据通过申报业务规则校验后,经纳税人确认即完成申报表填报业务。
Sicily 1146 采药(DP动态规划——01背包问题)
//传统非滚动数组实现形式#include#includeusing namespace std;int s[1000][1000];int main(){ int T,M,t,v,_max = -1;//T为时间上限(背包容量),M为药草份数(物品总数) scanf("%d%d",&T,&M); for(int i = 1;i <= M;++i) {
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
大中型超市收银系统(可直接运行)
光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开
Sicily 1146. 采药 解题报告(0-1背包问题)
题目传送门:1146. 采药 思路: 典型的0-1背包问题,不像分数背包问题可以用贪心算法,所以只能用动态规划。dp[i][j]表示在限定时间j内,只从前i个山药里面取能得到的最大价值。dp的构建同样采用自底向上的方法。 对于第i个山药,考虑取与不取,有dp[i - 1][j]和dp[i - 1][j - t[i]] + v[i]两种情况,取较大值即可。 代码: ...
华为的C语言编程规范.pdf
华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。
[sicily]1146. 采药
1146. 采药 Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一
VB摄像头监控
该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制
Sicily 1146 采药
01背包,动态规划。 #include using namespace std; int tab[101][1001]; int solve_dp( int t, int m ) { int w[101],v[101]; int i,j; for ( i=1;i<=m;i++ ) cin >> w[i] >> v[i]; for ( i=0;i<
【luogu P1048】【ybtoj】【背包问题课堂过关】【DP】【例题1】采药问题 &【NOIP2005 普及组】采药
01背包模板题
洛谷1048 采药 解题报告
洛谷1048 采药 本题地址:http://www.luogu.org/problem/show?pid=1048 题目描述 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会...
【ybt】【动态规划 背包 课过 例1】采药问题
采药问题 题目链接:YbtOJ/Luogu 解题思路 01背包模板题。 code #include<iostream> #include<cstdio> using namespace std; int t,n; int f[110][1010]; int w[110],v[110]; int main() { cin>>t>>n; for(int i=1;i<=n;i++) scanf("%d%d",&w[i],&v[i
P1048 [NOIP2005 普及组] 采药(动态规划)题解
题目传送 这是一个背包的jiben
采药问题 c语言程序,采药问题(动态规划)
题目描述辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”如果你是辰辰,你...
采药问题【DP】
>Link ybtoj采药问题 >解题思路 背包模板 >代码 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #define N 1010 using namespace std; int T, n, t[N], w[N], f[N], ans; int main() { scanf ("%d%d", &T, &
采药 解题报告
Description辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”如
DAG的深度优先搜索标记学习日志
// Problem#: 12120// Submission#: 3332350// The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License// URI: http://creativecommons.org/licenses/by-n
292



被折叠的 条评论
为什么被折叠?



