提莫攻击 ---- 模拟算法

题目链接

题目:

分析:

  • 如果两次攻击的时间差是>=中毒的持续时间duration, 那么第一次攻击的中毒时间就是duration
  • 如果两次攻击的时间差是< 中毒的持续时间duration, 那么第一次攻击的持续时间就是这个时间差
  • 假设攻击了n次, 那么我们从第一次攻击开始计算时间差, 那么当我们算到最后一次时, 计算的是前面的n-1次的时间, 那么最后一次攻击, 中毒时间肯定是duration, 所以我们计算结果时, 要加上duration

代码:

java 复制代码
class Solution {
    public int findPoisonedDuration(int[] timeSeries, int duration) {
        int ret = 0;
        for(int i = 1; i < timeSeries.length; i++){
            if(timeSeries[i] - timeSeries[i-1] >= duration){
                ret += duration;
            }else{
                ret += timeSeries[i] - timeSeries[i-1];
            }
        }
        return ret + duration;
    }
}
相关推荐
aloha_7893 分钟前
联易融测开面试准备
java·python·面试·单元测试
s***46985 分钟前
【SpringBoot篇】详解Bean的管理(获取bean,bean的作用域,第三方bean)
java·spring boot·后端
im_AMBER6 分钟前
Leetcode 63 定长子串中元音的最大数目
c++·笔记·学习·算法·leetcode
动亦定1 小时前
页面导出大量数据导致响应超时解决方案
java·mysql
小白程序员成长日记1 小时前
2025.11.29 力扣每日一题
数据结构·算法·leetcode
q***06291 小时前
解决 Tomcat 跨域问题 - Tomcat 配置静态文件和 Java Web 服务(Spring MVC Springboot)同时允许跨域
java·前端·spring
还是鼠鼠1 小时前
Redisson实现的分布式锁能解决主从一致性的问题吗?
java·数据库·redis·分布式·缓存·面试·redisson
d***95621 小时前
windows配置永久路由
java
在黎明的反思2 小时前
进程通信之消息队列(IPC)
算法
王桑.2 小时前
IO流高级流--转换流
java