P1412 经营与开发【洛谷算法习题】
P1412 经营与开发网页链接P1412 经营与开发题目描述4 X 4X4X概念体系是指在 PC 战略游戏中一种相当普及和成熟的系统概念得名自4 44个同样以 EX 为开头的英语单词。eXplore \verb!eXplore!eXplore探索eXpand \verb!eXpand!eXpand拓张与发展eXploit \verb!eXploit!eXploit经营与开发eXterminate \verb!eXterminate!eXterminate征服——维基百科今次我们着重考虑 exploit 部分并将其模型简化你驾驶着一台带有钻头初始能力值w ww的飞船按既定路线依次飞过n nn个星球。星球笼统的分为2 22类资源型和维修型。p pp为钻头当前能力值资源型含矿物质量a i a_iai​若选择开采则得到a i × p a_i\times pai​×p的金钱之后钻头损耗k % k\%k%即p ← p × ( 1 − 0.01 k ) p\gets p\times (1-0.01k)p←p×(1−0.01k)维修型维护费用b i b_ibi​若选择维修则支付b i × p b_i\times pbi​×p的金钱之后钻头修复c % c\%c%即p ← p × ( 1 0.01 c ) p\gets p\times (10.01c)p←p×(10.01c)。注维修后钻头的能力值可以超过初始值你可以认为是翻修 升级金钱可以透支。请作为舰长的你仔细抉择以最大化收入。输入格式第一行4 44个整数n , k , c , w n,k,c,wn,k,c,w。以下n nn行每行2 22个整数t y p e , x \mathrm{type},xtype,x。t y p e \mathrm{type}type为1 11则代表其为资源型星球x xx为其矿物质含量a i a_iai​t y p e \mathrm{type}type为2 22则代表其为维修型星球x xx为其维护费用b i b_ibi​输出格式一个实数保留2 22位小数表示最大的收入。输入输出样例 #1输入 #15 50 50 10 1 10 1 20 2 10 2 20 1 30输出 #1375.00说明/提示数据范围及约定对于30 % 30\%30%的数据n ≤ 100 n \le 100n≤100另有20 % 20\%20%的数据n ≤ 1000 n \le 1000n≤1000k 100 k100k100对于100 % 100\%100%的数据n ≤ 100000 n \le 100000n≤1000000 ≤ k , c , w , a i , b i ≤ 100 0 \le k,c,w,a_i,b_i \le 1000≤k,c,w,ai​,bi​≤100保证答案不超过10 9 10^9109。解题思路本题是线性动态规划 系数归一化的经典优化题核心利用钻头能力值的乘法缩放特性将高维状态压缩为单变量通过倒序递推实现线性时间求解。核心性质收益与钻头能力线性相关所有操作对钻头能力值的修改均为乘法缩放开采后乘以( 1 − 0.01 k ) (1-0.01k)(1−0.01k)维修后乘以( 1 0.01 c ) (10.01c)(10.01c)。因此后续所有收益与当前钻头能力值呈严格线性关系——若钻头能力变为原来的k kk倍后续最大收益也会变为原来的k kk倍。基于该性质无需记录钻头能力的具体数值只需维护「钻头能力为1单位时后续能获得的最大收益」即可通过系数缩放推导任意钻头能力下的最优收益将状态维度从二维压缩为一维。倒序动态规划从最后一个星球向前倒序递推变量ans表示处理到当前星球时钻头能力为1单位从当前星球到末尾能获得的最大收入。资源型星球type1不开采钻头能力不变后续收益保持为ans。开采立即获得a i a_iai​的单位收益钻头能力变为原来的( 1 − 0.01 k ) (1-0.01k)(1−0.01k)倍后续收益缩放为a n s × ( 1 − 0.01 k ) ans \times (1-0.01k)ans×(1−0.01k)总收益为a i a n s × ( 1 − 0.01 k ) a_i ans \times (1-0.01k)ai​ans×(1−0.01k)。取两者最大值更新当前ans。维修型星球type2不维修钻头能力不变后续收益保持为ans。维修立即支付b i b_ibi​的单位成本钻头能力变为原来的( 1 0.01 c ) (10.01c)(10.01c)倍后续收益缩放为a n s × ( 1 0.01 c ) ans \times (10.01c)ans×(10.01c)总收益为a n s × ( 1 0.01 c ) − b i ans \times (10.01c) - b_ians×(10.01c)−bi​。取两者最大值更新当前ans。结果计算初始钻头能力为w ww因此最终总收益为ans * w保留两位小数输出即可。算法时间复杂度为O ( n ) O(n)O(n)空间复杂度为O ( n ) O(n)O(n)仅存储星球信息完美适配n ≤ 10 5 n \le 10^5n≤105的数据规模。总结核心逻辑利用钻头能力的乘法缩放特性将收益归一化到单位钻头能力下通过倒序递推逐个决策每个星球的最优选择最终乘以初始钻头能力得到答案。关键操作线性关系推导、倒序DP设计、两类星球的状态转移、浮点精度处理。效率保障仅一次线性遍历无嵌套循环常数级额外变量十万级数据可毫秒级完成。代码简要说明数据存储数组t存储星球类型g存储资源型星球的矿物量l存储维修型星球的维护费用。倒序递推从第n个星球倒序遍历到第1个根据星球类型分别计算操作与不操作的收益取最大值更新ans单位钻头的后续最大收益。结果输出将单位收益乘以初始钻头能力w使用printf格式化保留两位小数输出。输入优化关闭流同步加速输入适配十万级数据的读取效率。代码内容#includebits/stdc.husingnamespacestd;#defineendl\ntypedeflonglongll;typedefunsignedlonglongull;typedefvectorvectorllvvt;typedefpairll,llpll;constll N1e310;constll INF1e18;constll M1e610;constll mod1e97;doublen,k,c,w;doubleg[100001],l[100001];ll t[100001];doubleans;intmain(){ios::sync_with_stdio(0);cin.tie(0),cout.tie(0);cinnkcw;for(ll i1;in;i){cint[i];if(t[i]1)cing[i];elsecinl[i];}for(ll in;i1;i--){if(t[i]1)ansmax(ans*(1-0.01*k)g[i],ans);elseansmax(ans*(10.01*c)-l[i],ans);}printf(%.2lf,ans*w);return0;}

相关新闻

设计 Token 语义化:不要把颜色命名成 blue-500 就结束

设计 Token 语义化:不要把颜色命名成 blue-500 就结束

设计 Token 语义化:不要把颜色命名成 blue-500 就结束 一、Token 命名决定协作成本 设计 Token 常从颜色和字号开始。很多团队会用 blue-500、gray-100 这类命名,短期很直观。但业务组件真正需要的是语义:主按钮背景、危险文本、边框弱化、…

2026/7/5 2:06:30阅读更多 →
三菱FX3U PLC运动轴控制与伺服调试实战

三菱FX3U PLC运动轴控制与伺服调试实战

1. 三菱FX3U运动轴控制项目概述三菱FX3U系列PLC在工业自动化领域已经服役超过15年,至今仍是中小型运动控制项目的首选方案。我最近完成了一个包装产线的改造项目,其中就涉及到4个伺服轴的同步控制。这个项目让我深刻体会到:一套成熟的程序模板…

2026/7/5 2:06:30阅读更多 →
2025 全国高联一试 A 卷

2025 全国高联一试 A 卷

第一题 公式第二题

2026/7/5 2:06:30阅读更多 →
AAA小学期第五周学习笔记

AAA小学期第五周学习笔记

完成了发射端pcb的绘制,并下单

2026/7/5 6:01:43阅读更多 →
如何在3分钟内配置专业级DeepL翻译浏览器扩展

如何在3分钟内配置专业级DeepL翻译浏览器扩展

如何在3分钟内配置专业级DeepL翻译浏览器扩展 【免费下载链接】deepl-chrome-extension A DeepL Translator Chrome extension 项目地址: https://gitcode.com/gh_mirrors/de/deepl-chrome-extension 还在为语言障碍而烦恼吗?想要像阅读母语一样轻松浏览外文…

2026/7/5 6:01:43阅读更多 →
AI For Everyone 课程 2024 版:非技术视角的 4 周 AI 项目实战路线图

AI For Everyone 课程 2024 版:非技术视角的 4 周 AI 项目实战路线图

AI For Everyone 课程 2024 版:非技术视角的 4 周 AI 项目实战路线图当零售业高管Sarah第一次听到董事会要求"全员拥抱AI"时,她盯着满屏的技术术语感到无所适从。这正是《AI For Everyone》课程要解决的核心痛点——在不需要理解神经网络架构的…

2026/7/5 6:01:43阅读更多 →
DeepL Chrome翻译插件:5分钟掌握专业级网页翻译工具

DeepL Chrome翻译插件:5分钟掌握专业级网页翻译工具

DeepL Chrome翻译插件:5分钟掌握专业级网页翻译工具 【免费下载链接】deepl-chrome-extension A DeepL Translator Chrome extension 项目地址: https://gitcode.com/gh_mirrors/de/deepl-chrome-extension 还在为阅读外文网页而烦恼吗?DeepL Chr…

2026/7/5 6:01:43阅读更多 →
Adobe-GenP 3.0完全指南:三步解锁Adobe全家桶专业功能

Adobe-GenP 3.0完全指南:三步解锁Adobe全家桶专业功能

Adobe-GenP 3.0完全指南:三步解锁Adobe全家桶专业功能 【免费下载链接】Adobe-GenP Adobe CC 2019/2020/2021/2022/2023 GenP Universal Patch 3.0 项目地址: https://gitcode.com/gh_mirrors/ad/Adobe-GenP 对于众多创意工作者来说,Adobe Creati…

2026/7/5 6:01:43阅读更多 →
错题本为什么常常没有效果

错题本为什么常常没有效果

很多孩子都有错题本,但真正因为错题本明显改善学习质量的并不多。原因很简单:很多错题本只是把错题抄了一遍,或者把答案改对了,并没有真正修复错因。孩子今天把这道题改会了,下次换一个条件、换一个问法,还…

2026/7/5 5:56:43阅读更多 →
从GitHub安全案例解析常见漏洞与防护实践

从GitHub安全案例解析常见漏洞与防护实践

1. 项目概述:从GitHub Trending看安全实战 最近在GitHub Trending上看到一个项目,叫 skills4/skills ,它因为一些安全漏洞案例被大家讨论。这其实是一个挺典型的场景:一个旨在展示或教授某种技能的仓库,本身却成了安…

2026/7/5 0:01:08阅读更多 →
MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

# MLT 2026启示:因果推理与概率建模驱动下一代LLM应用## 一、背景与挑战:从“黑箱预测”到“可信推理”2026年6月,第7届机器学习与趋势国际会议(MLT 2026)将在悉尼召开。会议议程中,“因果与可解释机器学习…

2026/7/5 0:01:08阅读更多 →
通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

1. 项目概述与漏洞背景最近在梳理一些历史OA系统的安全风险时,通达OA v11.6版本中的一个老漏洞又进入了我的视线。这个漏洞位于/general/bi_design/appcenter/report_bi.func.php文件中,是一个典型的SQL注入点。虽然这个漏洞的利用方式看起来并不复杂&am…

2026/7/5 0:01:08阅读更多 →
从GitHub安全案例解析常见漏洞与防护实践

从GitHub安全案例解析常见漏洞与防护实践

1. 项目概述:从GitHub Trending看安全实战 最近在GitHub Trending上看到一个项目,叫 skills4/skills ,它因为一些安全漏洞案例被大家讨论。这其实是一个挺典型的场景:一个旨在展示或教授某种技能的仓库,本身却成了安…

2026/7/5 0:01:08阅读更多 →
MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

# MLT 2026启示:因果推理与概率建模驱动下一代LLM应用## 一、背景与挑战:从“黑箱预测”到“可信推理”2026年6月,第7届机器学习与趋势国际会议(MLT 2026)将在悉尼召开。会议议程中,“因果与可解释机器学习…

2026/7/5 0:01:08阅读更多 →
通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

1. 项目概述与漏洞背景最近在梳理一些历史OA系统的安全风险时,通达OA v11.6版本中的一个老漏洞又进入了我的视线。这个漏洞位于/general/bi_design/appcenter/report_bi.func.php文件中,是一个典型的SQL注入点。虽然这个漏洞的利用方式看起来并不复杂&am…

2026/7/5 0:01:08阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/5 1:30:27阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/5 3:48:10阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/5 3:48:09阅读更多 →