相关文章推荐
狂野的毛豆  ·  Spring Boot之Spring ...·  5 月前    · 
气势凌人的莴苣  ·  python ...·  1 年前    · 

在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄。他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。

当提莫攻击艾希,艾希的中毒状态正好持续 duration 秒。

正式地讲,提莫在 t 发起攻击意味着艾希在时间区间 [t, t + duration - 1] (含 t t + duration - 1 )处于中毒状态。如果提莫在中毒影响结束 再次攻击,中毒状态计时器将会 重置 ,在新的攻击之后,中毒影响将会在 duration 秒后结束。

给你一个 非递减 的整数数组 timeSeries ,其中 timeSeries[i] 表示提莫在 timeSeries[i] 秒时对艾希发起攻击,以及一个表示中毒持续时间的整数 duration

返回艾希处于中毒状态的 秒数。

输入:timeSeries = [1,4], duration = 2
输出:4
解释:提莫攻击对艾希的影响如下:
- 第 1 秒,提莫攻击艾希并使其立即中毒。中毒状态会维持 2 秒,即第 1 秒和第 2 秒。
- 第 4 秒,提莫再次攻击艾希,艾希中毒状态又持续 2 秒,即第 4 秒和第 5 秒。
艾希在第 1、2、4、5 秒处于中毒状态,所以总中毒秒数是 4 。
class Solution: def findPoisonedDuration(self, timeSeries: List[int], duration: int) -> int: ans, expired = 0, 0#创建ans与expird参数,ans作为中毒总时间 for i in range(len(timeSeries)): if timeSeries[i] >= expired:#如果后一个参数大于上一次中毒时间总和则无影响 ans += duration#直接加 else: ans += timeSeries[i] + duration - expired#如果出现重叠则用后参加中毒事件减去上一次中毒时间总和 expired = timeSeries[i] + duration#上一次中毒时间总和 return ans

力扣官解,感觉不好理解,比较复杂一点

class Solution(object):
    def findPoisonedDuration(self, timeSeries, duration):
        :type timeSeries: List[int]
        :type duration: int
        :rtype: int
        sum=0#总时间
        for i in range(1,len(timeSeries)):
            sum+=min(duration,timeSeries[i]-timeSeries[i-1])#只需要加更小的即可
        return sum+duration

如果timeseries[i]-timeseries[i-1]>duration的情况下直接加duration没有问题

反之timeseries[i]-timeseries[i-1]<duration的情况,第一次中毒持续时间未结束便受到第二次攻击,则应加timeseries[i]-timeseries[i-1]

所以直接取最小值即可

收到最后一次攻击是一定会有一个duration,所以返回sum+duration

反之timeseries[i]-timeseries[i-1]<duration的情况,第一次中毒持续时间未结束便受到第二次攻击,则应加timeseries[i]-timeseries[i-1]- 第 1 秒,提莫攻击艾希并使其立即中毒。- 第 4 秒,提莫再次攻击艾希,艾希中毒状态又持续 2 秒,即第 4 秒和第 5 秒。艾希在第 1、2、4、5 秒处于中毒状态,所以总中毒秒数是 4。当提莫攻击艾希,艾希的中毒状态正好持续。,在新的攻击之后,中毒影响将会在。再次攻击,中毒状态计时器将会。
正式地讲, 提莫在 t 发起 发起 攻击 意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1) 处于 中毒 状态 。如果 提莫在 中毒 影响结束前再次 攻击 中毒 状态 计时器将 重置 ,在新的 攻击 之后, 中毒 影响将 duration 后结束。- 第 2 提莫 再次 攻击 艾希,并重置 中毒 计时器,艾希 中毒 状态 需要 持续 2 ,即第 2 和第 3 。- 第 4 提莫 再次 攻击 艾希,艾希 中毒 状态 持续 2 ,即第 4 和第 5 。返回艾希 处于 中毒 状态 的 总 数。
这道题,主要考查数组方面的知识——数组的遍历 艾希总的 中毒 时间等于每一次 攻击 中毒 时间相加的和。所以要计算每一次 攻击 之后的 中毒 时间,题目给出 攻击 一次, 中毒 时间是 duration ,但是并不是每次 攻击 都要累加 duration 。因为 出现艾希 中毒 过程中,再次遇到 攻击 ,再次 中毒 (重复 中毒 ),这个时候 中毒 时间并不是依次顺延。具体理解如下: 每一次 攻击 之前艾希有两种 状态 :还在 中毒 过程中;没有 中毒 。判断艾希是哪一种 状态 的标准是看timeSeries 在《英雄联盟》的世界中,有一个叫 “ 提莫 ” 的英雄。他的 攻击 可以让敌方英雄艾希(编者注:寒冰射手)进入 中毒 状态 。 当 提莫 攻击 艾希,艾希的 中毒 状态 正好 持续 duration 。 正式地讲, 提莫在 t 发起 发起 攻击 意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1) 处于 中毒 状态 。如果 提莫在 中毒 影响结束 前 再次 攻击 中毒 状态 计时器将 重置 ,在新的 攻击 之后, 中毒 影响将 在 du
力扣上面的一道简单题,不过题目震惊我了: 在《英雄联盟》的世界中,有一个叫 “ 提莫 ” 的英雄。他的 攻击 可以让敌方英雄艾希(编者注:寒冰射手)进入 中毒 状态 。 当 提莫 攻击 艾希,艾希的 中毒 状态 正好 持续 duration 。 正式地讲, 提莫在 t 发起 发起 攻击 意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1) 处于 中毒 状态 。如果 提莫在 中毒 影响结束 前 再次 攻击 中毒 状态 计时器将 重置 ,在新的 攻击 之后, 中毒 影响将 duration 后结束。 一、 题目描述 在《英雄联盟》的世界中,有一个叫 “ 提莫 ” 的英雄。他的 攻击 可以让敌方英雄艾希(编者注:寒冰射手)进入 中毒 状态 。 当 提莫 攻击 艾希,艾希的 中毒 状态 正好 持续 duration 。 正式地讲, 提莫在 t 发起 发起 攻击 意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1) 处于 中毒 状态 。如果 提莫在 中毒 影响结束 前 再次 攻击 中毒 状态 计时器将 重置 ,在新的 攻击 之后, 中毒 影响
func findPoisoned Duration (timeSeries []int, duration int) int { count := 0 //tempcount := 1 if len(timeSeries) == 1 { return duration for i := 1; i < len(timeSeries); i++ { if timeSeries[i] - timeSeries[. 在《英雄联盟》的世界中,有一个叫 “ 提莫 ” 的英雄。他的 攻击 可以让敌方英雄艾希(编者注:寒冰射手)进入 中毒 状态 。 当 提莫 攻击 艾希,艾希的 中毒 状态 正好 持续 duration 。 正式地讲, 提莫在 t 发起 发起 攻击 意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1) 处于 中毒 状态 。如果 提莫在 中毒 影响结束 前 再次 攻击 中毒 状态 计时器将 重置 ,在新的 攻击 之后, 中毒 影响将 duration 后结束。 给你一个 非递减 的整数数组 tim
题目描述:在《英雄联盟》的世界中,有一个叫 “ 提莫 ” 的英雄,他的 攻击 可以让敌方英雄艾希(编者注:寒冰射手)进入 中毒 状态 。现在,给出 提莫 对艾希的 攻击 时间序列和 提莫 攻击 中毒 持续 时间,你需要输出艾希的 中毒 状态 总时长。 你可以认为 提莫在 给定的时间点进行 攻击 ,并立即使艾希 处于 中毒 状态 。 输入: [1,4], 2 输出: 4 原因: 第 1 初, 提莫 开始对艾希进行 攻击 并使其立即 中毒 中毒 状态 维持 2 钟,直到第 2 末结束。 第 4 初, 提莫 再次 攻击 艾希,使得艾希获得另外 2 中毒 时间。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/teemo-attacking 在《英雄联盟》的世界中,有一个叫 “ 提莫 ” 的英雄。他的 攻击 可以让敌方英雄艾希(编者注:寒冰射手)进入 中毒 状态 。 当 提莫 攻击 艾希,艾希的 中毒 状态 正好 持续 duration 。 正式地讲, 提莫在 t 发起 发起 攻击 意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1) 处于 中毒 状态 。如果 提莫在 中毒 影响结束前再次 攻击
@本文来源于公众号:csdn2299,喜欢可以关注公众号 程序员学府 这篇文章主要介绍了 python 读写Excel表格的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 安装两个库:pip install xlrd、pip install xlwt 1. python 读excel——xlrd 2. python 写excel——xlwt 1.读excel数据,包括...
在《英雄联盟》的世界中,有一个叫 “ 提莫 ” 的英雄,他的 攻击 可以让敌方英雄艾希(编者注:寒冰射手)进入 中毒 状态 。现在,给出 提莫 对艾希的 攻击 时间序列和 提莫 攻击 中毒 持续 时间,你需要输出艾希的 中毒 状态 总时长。 你可以认为 提莫在 给定的时间点进行 攻击 ,并立即使艾希 处于 中毒 状态 。 输入: [1,4], 2 输出: 4 原因: 在第 1 开始时, 提莫 开始对艾希进行 攻击 并使其立即 中毒 中毒 状...
CSDN-Ada助手: 恭喜你写了第四篇博客!标题“PYTHON蓝桥杯:提莫攻击”听起来很有趣。我很高兴看到你持续创作,并分享你的经验和知识。提莫攻击听起来像是一个有趣的话题,我期待你在博客中分享更多关于这个主题的内容。同时,我建议你在下一篇博客中尝试探索一些与PYTHON蓝桥杯相关的挑战或技巧,这将进一步丰富你的读者的知识。谢谢你的分享,期待你的下一篇博客! 如何快速涨粉,请看该博主的分享:https://hope-wisdom.blog.csdn.net/article/details/130544967?utm_source=csdn_ai_ada_blog_reply5 PYTHON-第三大的数 CSDN-Ada助手: "恭喜你写了第5篇博客!看到你对Python的热情和专注,真的很让人欣慰。不过,我觉得你可以尝试写一些关于Python编程中常见错误的文章,或者分享一些实用的Python技巧。希望你能继续保持创作的热情,共同进步!" PYTHON-错误的集合 CSDN-Ada助手: 亲爱的作者,恭喜你发布了第7篇博客!标题“PYTHON-错误的集合”让我非常好奇,我期待着阅读你的文章。感谢你一直以来的持续创作,你的努力和热情让我们受益匪浅。在下一篇博客中,也许可以分享一些关于Python错误处理的技巧和经验,这对于初学者来说会非常有帮助。期待你的下一篇精彩文章! PYTHON三个数的最大乘积 CSDN-Ada助手: 恭喜您写了第6篇博客!看到您的标题“PYTHON三个数的最大乘积”让我很感兴趣。能够持续创作并分享您的知识,是一件令人钦佩的事情。我希望您能继续保持这样的创作热情,并继续分享更多有趣且实用的主题。或许下一步您可以考虑介绍一些关于Python中其他有趣数学问题的解决方案,这将会给读者带来更多启发和学习的机会。期待您的新作品!