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

题目链接

题目:

分析:

  • 如果两次攻击的时间差是>=中毒的持续时间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;
    }
}
相关推荐
java资料站1 分钟前
二、Spring AI Alibaba · ChatModel
java·windows·spring
浮链序16 分钟前
怎么证明"你这个模型是偷我的"——把蒸馏变成取证工具
算法·安全·llm
小O的算法实验室16 分钟前
IEEE TMC,面向异构物联网的多目标量子行为拓扑优化算法
算法
十年Java程序媛25 分钟前
Java 接口和抽象类对比|Java8 新特性,抛弃老旧八股,正确选型
java·spring boot·后端
caoerzhong28 分钟前
JeeWMS 开源 WMS 部署避坑指南:Java 仓库管理系统的环境基线、四类根因与可复现交付
java·开发语言·开源
用户37215742613528 分钟前
Java 合并 PDF 文件:完整合并、指定页面合并与流合并
java
圣保罗的大教堂1 小时前
leetcode 301. 删除无效的括号 困难
leetcode
liliangcsdn1 小时前
派息率指标的应用探索和分析
大数据·算法
for_ever_love__1 小时前
MySQL 全文索引实战:FULLTEXT、ngram 中文分词与 MATCH AGAINST 到底该怎么用
java·python·mysql·全文检索·分词·索引·ngram
java资料站1 小时前
五、Spring AI Alibaba · Memory · Saver(短期会话)
java·spring·microsoft