2383. 赢得比赛需要的最少训练时长 - 贪心+模拟
创始人
2024-06-02 14:40:05
0

文章目录

  • 2383. 赢得比赛需要的最少训练时长 -贪心+模拟(不过挺像滑动窗口的)
    • 2383. 赢得比赛需要的最少训练时长
  • 小结

2383. 赢得比赛需要的最少训练时长 -贪心+模拟(不过挺像滑动窗口的)

2383. 赢得比赛需要的最少训练时长

题目链接:2383. 赢得比赛需要的最少训练时长
题目大意:
你正在参加一场比赛,给你两个 正 整数 initialEnergy 和 initialExperience 分别表示你的初始精力和初始经验。
另给你两个下标从 0 开始的整数数组 energy 和 experience,长度均为 n 。
你将会 依次 对上 n 个对手。第 i 个对手的精力和经验分别用 energy[i] 和 experience[i] 表示。当你对上对手时,需要在经验和精力上都 严格 超过对手才能击败他们,然后在可能的情况下继续对上下一个对手。
击败第 i 个对手会使你的经验 增加 experience[i],但会将你的精力 减少 energy[i] 。
在开始比赛前,你可以训练几个小时。每训练一个小时,你可以选择将增加经验增加 1 或者 将精力增加 1 。
返回击败全部 n 个对手需要训练的 最少 小时数目。

注意:(1)n == energy.length == experience.length;(2)1 <= n <= 100;(3)
1 <= initialEnergy, initialExperience, energy[i], experience[i] <= 100

示例:

输入:initialEnergy = 5, initialExperience = 3, energy = [1,4,3,2], experience = [2,6,3,1]
输出:8
解释:在 6 小时训练后,你可以将精力提高到 11 ,并且再训练 2 个小时将经验提高到 5 。
按以下顺序与对手比赛:
- 你的精力与经验都超过第 0 个对手,所以获胜。精力变为:11 - 1 = 10 ,经验变为:5 + 2 = 7 。
- 你的精力与经验都超过第 1 个对手,所以获胜。精力变为:10 - 4 = 6 ,经验变为:7 + 6 = 13 。
- 你的精力与经验都超过第 2 个对手,所以获胜。精力变为:6 - 3 = 3 ,经验变为:13 + 3 = 16 。
- 你的精力与经验都超过第 3 个对手,所以获胜。精力变为:3 - 2 = 1 ,经验变为:16 + 1 = 17 。
在比赛前进行了 8 小时训练,所以返回 8 。
可以证明不存在更小的答案。输入:initialEnergy = 2, initialExperience = 4, energy = [1], experience = [3]
输出:0
解释:你不需要额外的精力和经验就可以赢得比赛,所以返回 0 。

参考代码:

class Solution:def minNumberOfHours(self, initialEnergy: int, initialExperience: int, energy: List[int], experience: List[int]) -> int:n = len(experience)eS = sum(energy)ans = eS-initialEnergy+1 if eS>=initialEnergy else 0ta = initialExperiencefor a in experience:if ta <= a:ans += a-ta+1# 要比当前值大1 所以ta=a+1ta = a+1ta += aprint(ta)return ans
  • 时间复杂度:O(n)O(n)O(n),其中 n 为数组 energy 的长度。
  • 空间复杂度:O(n)O(n)O(n)

小结

这道题理解起来思路并不难,主要是自己绊在了条件判断上,记住需要如果每次能量比较不满足严格大于要求时,需要更新下次用于能量对比的值,也就是这行代码ta = a+1 ,细心一些。

相关内容

热门资讯

经典议论文(最新6篇) 经典议论文 篇一:商业竞争对市场发展的影响商业竞争是市场经济中不可避免的现象,对市场发展起着重要的推...
谈面子议论文【优秀5篇】 谈面子议论文 篇一面子在中国文化中一直扮演着重要的角色,它是人们社会地位和尊严的象征。因此,面子议论...
初一的女孩_(精选6篇) 初一的女孩_ 篇一初一的女孩初一的女孩,正值少女青春期的开始,充满了好奇心和朝气。在这个阶段,她们开...
初中生科幻作文:机器猫(最新... 初中生科幻作文:机器猫 篇一机器猫我叫小明,是一个普通的初中生。有一天,我意外地发现了一只神奇的机器...
初一军训作文(推荐3篇) 初一军训作文 篇一初一军训是每个初中生的必修课程,也是我们适应新环境、锻炼意志的一次重要机会。我国历...
寒梅墨香初中作文500字(精... 寒梅墨香初中作文500字 篇一:寒梅墨香寒梅墨香,这是我最喜欢的一句诗句。每当我看到这句诗时,心中就...
仰望星空,脚踏实地作文650... 仰望星空,脚踏实地作文650字 篇一仰望星空,脚踏实地星空,是人类永远的向往和追求。每当夜幕降临,我...
我的忏悔初中作文【精简5篇】 我的忏悔初中作文 篇一我曾经做出了一件让我深感愧疚的事情,我想在这里向大家忏悔并寻求原谅。那是一个晴...
生活中的语言_初中记叙文【经... 生活中的语言_初中记叙文 篇一我和爸爸妈妈一样,是普通的工薪阶层,生活虽然平凡,但却充满了各种语言的...
初一我的奋斗目标作文500字... 初一我的奋斗目标作文500字 第一篇俗话说:“你脸上云淡风轻,谁也不知道你呼吸得有多紧;你走路带风,...
谢谢你让我遇见你作文(精彩5... 谢谢你让我遇见你作文 篇一遇见你,是我这一生最美好的偶遇。谢谢你,让我在茫茫人海中找到了属于我的那份...
那道靓丽的风景线作文700字... 那道靓丽的风景线作文700字 篇一那道靓丽的风景线在我家附近有一道靓丽的风景线,它是一条蜿蜒曲折的小...
烟花泪的作文【通用5篇】 烟花泪的作文 篇一烟花泪,是我对烟花的一种特殊感受。每当夜幕降临,烟花绽放的瞬间,我总能感受到一种深...
红色精神的作文600字【最新... 红色精神的作文600字 篇一:传承红色精神,弘扬革命精神红色精神是我们中华民族宝贵的精神财富,它是中...
我终于七年级作文通用8篇 我终于七年级作文 第一篇我默默地坐在床上,眼泪不争气地从眼眶里骨碌骨碌滚了出来。我抽了一张纸巾,把眼...
我好想见你_初中记叙文(通用... 我好想见你_初中记叙文 篇一初中时光,是我们成长的岁月。那时候的我们,充满了青春的活力和对未来的期待...
初中说明文作文(优质6篇) 初中说明文作文 篇一绿色出行的意义与方法随着城市化进程的加快,汽车的数量不断增加,交通拥堵和空气污染...
初一生活句子精选375句 初一生活句子 精选120句1. 除了你的母亲和你爱的女人,不要多余的给任何女人面子,男女不是平等的么...
生命的长河初中作文(通用3篇... 生命的长河初中作文 篇一生命的长河初中作文生命是一条绵延不绝的长河,每个人都在这条长河中行走,流淌着...
什么是幸福的作文【精彩6篇】 什么是幸福的作文 篇一幸福是什么?这是一个让人们思考已久的问题。对于每个人来说,幸福的定义可能是不同...