题目

在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄,他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。现在,给出提莫对艾希的攻击时间序列和提莫攻击的中毒持续时间,你需要输出艾希的中毒状态总时长。

你可以认为提莫在给定的时间点进行攻击,并立即使艾希处于中毒状态。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/teemo-attacking
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

示例1:

输入: [1,4], 2
输出: 4
原因: 第 1 秒初,提莫开始对艾希进行攻击并使其立即中毒。中毒状态会维持 2 秒钟,直到第 2 秒末结束。
第 4 秒初,提莫再次攻击艾希,使得艾希获得另外 2 秒中毒时间。
所以最终输出 4 秒。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/teemo-attacking
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

方法1

1、将数组中相邻的差值和持续时间duration做比较。如果差值小于duration则总时间sum+=差值;如果差值大于duration则总时间sum+=duration

2、考虑持续时间duration为0 和 数组长度为0 的情况

if duration == 0 or len(timeSeries) == 0:return 0

3、python中的没有 && 和 || 形式
python中是没有&&及||这两个运算符的,取而代之的是英文 and 和 or 。

4、python中没有 a++ 形式

Python实现
class Solution:def findPoisonedDuration(self, timeSeries: List[int], duration: int) -> int:sum = 0var = timeSeries[0]for i in timeSeries:pre = i - varvar = iif pre < duration:sum += preelse:sum += durationsum += durationif duration == 0 or len(timeSeries) == 0:return 0else:return sum

Java实现1
class Solution {public int findPoisonedDuration(int[] timeSeries, int duration) {int time = 0;for (int i = 0; i < timeSeries.length - 1; i++) {if ((timeSeries[i + 1] - timeSeries[i]) >= duration) {time = time + duration;} else {time = time + (timeSeries[i + 1] - timeSeries[i]);}}time = time + duration;return time;}
}

Java实现2

2021/11/10
又做了一遍,和之前的比较,看到了自己的进步,哭哭了。
我要继续加油继续加油!!!

class Solution {public int findPoisonedDuration(int[] timeSeries, int duration) {int n = timeSeries.length;int sum = 0;for (int i = 0; i < n - 1; i++){sum += Math.min(timeSeries[i + 1] - timeSeries[i], duration);}sum += duration;return sum;}
}

2022/4/12

class Solution {public int findPoisonedDuration(int[] timeSeries, int duration) {int n = timeSeries.length;int res = 0;for (int i = 0; i < n - 1; i++) {res += timeSeries[i] + duration > timeSeries[i + 1] ? timeSeries[i + 1] - timeSeries[i] : duration;}return res + duration;}
}

力扣 495. 提莫攻击相关推荐

  1. 每日力扣——95. 提莫攻击

    如果两个时间间隔大于duration,则中毒时间加duration,否则增加两个时间间隔. class Solution { public:int findPoisonedDuration(vecto ...

  2. 力扣#495.提莫攻击 JAVA实现

    495.提莫攻击 题目:在<英雄联盟>的世界中,有一个叫 "提莫" 的英雄.他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态. 当提莫攻击艾希,艾希的中毒状态 ...

  3. 【快乐水题】495. 提莫攻击

    原题: 力扣链接:495. 提莫攻击 题目简述: 在<英雄联盟>的世界中,有一个叫 "提莫" 的英雄.他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态. 当提 ...

  4. LeetCode每日一题495. 提莫攻击

    495. 提莫攻击 在<英雄联盟>的世界中,有一个叫 "提莫" 的英雄.他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态. 当提莫攻击艾希,艾希的中毒状态正好 ...

  5. leetcode 495.提莫攻击

    leetcode 495.提莫攻击 在<英雄联盟>的世界中,有一个叫 "提莫" 的英雄,他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态.现在,给出提莫对艾希 ...

  6. Java实现 LeetCode 495 提莫攻击

    495. 提莫攻击 在<英雄联盟>的世界中,有一个叫 "提莫" 的英雄,他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态.现在,给出提莫对艾希的攻击时间序列和 ...

  7. 495. 提莫攻击(模拟)

    495. 提莫攻击 在<英雄联盟>的世界中,有一个叫 "提莫" 的英雄.他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态. 当提莫攻击艾希,艾希的中毒状态正好 ...

  8. 力扣495题:提莫攻击

    题目描述:在<英雄联盟>的世界中,有一个叫 "提莫" 的英雄,他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态.现在,给出提莫对艾希的攻击时间序列和提莫攻击的 ...

  9. LeetCode 495. 提莫攻击

    1. 题目 在<英雄联盟>的世界中,有一个叫 "提莫" 的英雄,他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态.现在,给出提莫对艾希的攻击时间序列和提莫攻击 ...

最新文章

  1. 怎么用python运行代码_python怎么运行代码程序
  2. python职业规划书_Python学习过后,职业规划怎样规划?
  3. activemq启动异常
  4. Go语言 读写锁互斥锁原理剖析(2)
  5. Hybris Administration console功能一览
  6. 什么样的程序员会让人讨厌
  7. wav pcm数据是带符号的吗_UE4 C++基础教程 - 基础数据结构
  8. Shell 的概述,操作命令
  9. python3.4.3如何获取文件的路径
  10. colab 上 tensorflow版本切换
  11. 判断m是否为素数c语言程序,c语言判断是否素数程序代码
  12. 行情数据接口-美股版
  13. 汽车CAN总线思维导图
  14. veeam安装和部署_Veeam Backup Replication 8 安装配置
  15. 单片机学习(三)中断
  16. gcc环境配置时遇到的问题
  17. 用手机写一个抓cookie软件
  18. iso 国家名称列表
  19. 双向链表 建立和插入
  20. java 年龄_Java 计算年龄

热门文章

  1. 大数据解读B站火过蔡徐坤的“鬼畜“区巨头们
  2. 虹膜识别无死角 风头正盛
  3. QT笔记- setAttribute()
  4. 广电宽带多台电脑通过路由器上网方案
  5. 中国广电尚未正式放号,但是三大运营商已现恐慌性竞争
  6. unity3d模型制作规范v1.0 .
  7. 计算机二级备考:Word 部分_1 文件操作
  8. 9012 年,中台到底有多火?
  9. 面向6G的RIS辅助的cell-free系统
  10. Springcloud----SkyWalking链路追踪