当前位置: 首页 > news >正文

题解:洛谷 P1048 [NOIP 2005 普及组] 采药

【题目来源】

洛谷:P1048 [NOIP 2005 普及组] 采药 - 洛谷 (luogu.com.cn)

【题目描述】

辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”

如果你是辰辰,你能完成这个任务吗?

【输入】

第一行有 \(2\) 个整数 \(T\)\(1≤T≤1000\))和 \(M\)\(1≤M≤100\)),用一个空格隔开,\(T\) 代表总共能够用来采药的时间,\(M\) 代表山洞里的草药的数目。

接下来的 \(M\) 行每行包括两个在 \(1\)\(100\) 之间(包括 \(1\)\(100\))的整数,分别表示采摘某株草药的时间和这株草药的价值。

【输出】

输出在规定的时间内可以采到的草药的最大总价值。

【输入样例】

70 3
71 100
69 1
1 2

【输出样例】

3

【算法标签】

《洛谷 P1048 采药》 动态规划,dp #背包# #NOIP普及组# #2005#

【代码详解】

#include <bits/stdc++.h>  // 包含标准库头文件
using namespace std;const int M = 105, T = 1005;  // 最大草药数量和最大采药时间// 动态规划数组:f[i][j]表示前i种草药在j时间内能获得的最大价值
int f[M][T];  // 每种草药的采集时间和价值
int tim[M], ve[M];  // 总采药时间和草药数量
int t, m;  int main()
{// 输入总采药时间和草药数量cin >> t >> m;// 输入每种草药的采集时间和价值for (int i = 1; i <= m; i++) cin >> tim[i] >> ve[i];// 动态规划处理for (int i = 1; i <= m; i++) {  // 遍历每种草药for (int j = 1; j <= t; j++) {  // 遍历每个可能的时间点// 默认不选当前草药,继承前i-1种草药的最优解f[i][j] = f[i - 1][j];// 如果当前时间足够采集当前草药if (j >= tim[i]) {// 比较不选当前草药和选当前草药哪个更优// 选当前草药的价值 = 前i-1种草药在(j-tim[i])时间内的最优解 + 当前草药价值f[i][j] = max(f[i][j], f[i - 1][j - tim[i]] + ve[i]);}}}// 输出前m种草药在t时间内能获得的最大价值cout << f[m][t] << endl;return 0;
}

【运行结果】

70 3
71 100
69 1
1 2
3
http://www.jsqmd.com/news/394986/

相关文章:

  • 2026年信用卡逾期协商指南:亲测靠谱机构名单与上岸经验分享 - 代码非世界
  • 负债逾期不用愁!高性价比网贷+信用卡协商公司实测,这一家值得托付 - 代码非世界
  • P4211 [LNOI2014] LCA
  • 蓝牙低功耗音频 Le audio音频输入控制协议(AICS)剖析 - 指南
  • 亲身经历:月薪五千,如何应对十万逾期债务?性价比高的协商路子在这 - 代码非世界
  • 题解:洛谷 P2196 [NOIP 1996 提高组] 挖地雷
  • AI应用架构师总结:在线学习系统架构设计的8个核心文档
  • 提示工程架构师亲授:智能交通中的5个关键Prompt设计
  • 本地贷款逾期协商较好的机构口碑评价较高的信用卡协商机构 - 代码非世界
  • 探秘AI提示工程架构师在智能营销中的提示工程应用
  • 贷款逾期真实的网上委托协商还款机构有哪些推荐? - 代码非世界
  • Agent 架构下的沙盒隔离技术实现
  • 题解:洛谷 P1216 [IOI 1994 / USACO1.5] 数字三角形 Number Triangles
  • 贷款逾期后,协商还款可以找哪些机构?协商还款找对这3类机构,稳步上岸不踩坑 - 代码非世界
  • AI原生应用领域:混合推理对行业的变革影响
  • 亚洲:出境游/短期出国福音:eSIM卡使用体验与RedteaGo套餐推荐
  • SpringBoot vs SpringMVC:以及SpringBoot的全流程开发(1)
  • 在飞牛 NAS(fnOS)上使用 Docker 部署 FastAPI 应用(这个是从错误学习教程 图是可以的)
  • OpenAI 和 Paradigm 推出 EVMbench:AI 帮智能合约把关的新工具
  • 题解:洛谷 P2341 [USACO03FALL / HAOI2006] 受欢迎的牛 G
  • 题解:洛谷 P3387 【模板】缩点
  • 信用卡逾期不用慌!实测口碑债务协商机构推荐,负债人安心上岸指南 - 代码非世界
  • 从0学习pwn【第三章】剖析ret2text32位,从函数调用到gdb调试(1)
  • 题解:洛谷 P3388 【模板】割点(割顶)
  • 题解:洛谷 P2860 [USACO06JAN] Redundant Paths G
  • 详细介绍:幽冥大陆(一百10)PHP打造Java的Jar安全——东方仙盟筑基期
  • ARM-中断管理
  • 题解:洛谷 P1656 炸铁路
  • 题解:洛谷 P2863 [USACO06JAN] The Cow Prom S
  • 告别“打字机”:Generative UI 如何重塑 AI 时代的前端交互?