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

题解:洛谷 P1616 疯狂的采药

【题目来源】

洛谷:P1616 疯狂的采药 - 洛谷

【题目描述】

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

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

此题和原题的不同点:

\(1\). 每种草药可以无限制地疯狂采摘。

\(2\). 药的种类眼花缭乱,采药时间好长好长啊!师傅等得菊花都谢了!

【输入】

输入第一行有两个整数,分别代表总共能够用来采药的时间 \(t\) 和代表山洞里的草药的数目 \(m\)

\(2\) 到第 \((m + 1)\) 行,每行两个整数,第 \((i + 1)\) 行的整数 \(a_i, b_i\) 分别表示采摘第 \(i\) 种草药的时间和该草药的价值。

【输出】

输出一行,这一行只包含一个整数,表示在规定的时间内,可以采到的草药的最大总价值。

【输入样例】

70 3
71 100
69 1
1 2

【输出样例】

140

【算法标签】

《洛谷 P1616 采药》 #动态规划DP# #背包DP# #洛谷原创#

【代码详解】

#include <bits/stdc++.h>
using namespace std;#define int long long  // 使用长整型防止溢出
const int N = 10005;   // 定义最大物品数量
const int M = 10000005; // 定义最大时间限制int t;                  // 总可用时间
int m;                  // 草药种类数量
int a[N];               // 存储每种草药采摘所需的时间
int b[N];               // 存储每种草药的价值
int f[M];               // 动态规划数组,f[j]表示在时间j内能获得的最大价值signed main()  // 使用signed代替int(因为定义了#define int long long)
{// 输入总时间和草药种类数cin >> t >> m;// 输入每种草药的采摘时间和价值for (int i = 1; i <= m; i++){cin >> a[i] >> b[i];}// 完全背包问题:动态规划求解for (int i = 1; i <= m; i++){// 遍历所有可能的时间(从当前草药所需时间到总时间)for (int j = a[i]; j <= t; j++){// 状态转移方程:// 选择采摘当前草药:f[j] = max(不采摘, 采摘当前草药 + 剩余时间的最大价值)f[j] = max(f[j], f[j - a[i]] + b[i]);}}// 输出在总时间t内能获得的最大价值cout << f[t] << endl;return 0;
}

【运行结果】

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

相关文章:

  • 题解:洛谷 P1802 5 倍经验日
  • 大模型训练三部曲:预训练、SFT与RLHF,小白也能看懂的大模型三步进化!
  • 基于springboot+Vue的汽车配件销售管理系统_kp8i9cgz
  • 题解:洛谷 P1049 [NOIP 2001 普及组] 装箱问题
  • 基于springboot+Vue的企业员工薪酬管理系统_n4s02htu
  • 【节点】[MainLightRealtimeShadow节点]原理解析与实际应用
  • 学习仲氦光谱的体会
  • 基于springboot+Vue的人才公寓管理系统_897cjl4r
  • Kafka在体育行业的应用:实时比赛数据分析
  • 贷款协商机构怎么选?北、上、广多地正规平台深度解析与亲测推荐 - 代码非世界
  • 负债协商不踩坑!北京、上海、广州贷款协商口碑机构盘点,附真实协商经验 - 代码非世界
  • BISHI61 小q的数列
  • 基于springboot+Vue的仁和机构的体检预约系统的设计与实现_06t067ij
  • 2026负债人实测|靠谱逾期处理公司盘点,正规网贷信用卡协商机构名单(附真实上岸经验) - 代码非世界
  • OpenClaw把“能力(capability)抽象成device
  • AI 时代,程序员和产品经理的生存指南:边界消融后,我们该何去何从?
  • 题解:洛谷 P1048 [NOIP 2005 普及组] 采药
  • 2026年信用卡逾期协商指南:亲测靠谱机构名单与上岸经验分享 - 代码非世界
  • 负债逾期不用愁!高性价比网贷+信用卡协商公司实测,这一家值得托付 - 代码非世界
  • P4211 [LNOI2014] LCA
  • 蓝牙低功耗音频 Le audio音频输入控制协议(AICS)剖析 - 指南
  • 亲身经历:月薪五千,如何应对十万逾期债务?性价比高的协商路子在这 - 代码非世界
  • 题解:洛谷 P2196 [NOIP 1996 提高组] 挖地雷
  • AI应用架构师总结:在线学习系统架构设计的8个核心文档
  • 提示工程架构师亲授:智能交通中的5个关键Prompt设计
  • 本地贷款逾期协商较好的机构口碑评价较高的信用卡协商机构 - 代码非世界
  • 探秘AI提示工程架构师在智能营销中的提示工程应用
  • 贷款逾期真实的网上委托协商还款机构有哪些推荐? - 代码非世界
  • Agent 架构下的沙盒隔离技术实现
  • 题解:洛谷 P1216 [IOI 1994 / USACO1.5] 数字三角形 Number Triangles