力扣:提莫攻击

代码:

复制代码
class Solution
{
public:
    int findPoisonedDuration(vector<int>& timeSeries, int duration)
    {
        //根据数组中给出的元素的值来进行判断!
        //若后面元素-前面元素>d  中了d秒!
        //                  <d   中了差的秒数!
        //最后一个元素肯定是完整中了d秒,最后结果加上d即可正确!

        int sum=0;
        for(int i=1;i<timeSeries.size();i++)
        {
            int x=timeSeries[i]-timeSeries[i-1];
            if(x>duration)
            {
                sum+=duration;
            }
            else
            {
                sum+=x;
            }


        }
        return sum+duration;
    }
};

思路:因为攻击之后,其中毒机制会重置!题目给出了数组!里面有攻击的时间!还给了一个变量dur,表示持续时间!所以可以根据此规律可以得出,若两次间隔时间>=dur的时候,实际上中毒了dur秒,否则就是中毒了nums[i]-nums[i-1]秒!从数组下标为1开始判断!最后那一次无需进行判断!因为是最后一次,所以一定中毒了dur秒!根据此思路即可求解!

相关推荐
hoiii1872 小时前
孤立森林 (Isolation Forest) 快速异常检测系统
算法
c++之路3 小时前
适配器模式(Adapter Pattern)
java·算法·适配器模式
吴声子夜歌3 小时前
Java——接口的细节
java·开发语言·算法
myheartgo-on3 小时前
Java—方 法
java·开发语言·算法·青少年编程
宝贝儿好4 小时前
【LLM】第三章:项目实操案例:智能输入法项目
人工智能·python·深度学习·算法·机器人
雪碧聊技术5 小时前
上午题_算法
算法·软考·软件设计师
naturerun5 小时前
从数组中删除元素的算法
数据结构·c++·算法
he___H5 小时前
接雨水----解
leetcode
斯内科6 小时前
四胞胎素数:找出‌个位数分别是 1、3、7、9‌,且‌十位及更高位数字完全相同‌的质数,例如 11、13、17、19
算法·质数·素数·四胞胎素数