力扣:提莫攻击

代码:

复制代码
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秒!根据此思路即可求解!

相关推荐
蜗牛去旅行吧10 分钟前
面试宝典集锦
面试·职场和发展
C雨后彩虹10 分钟前
无向图染色
java·数据结构·算法·华为·面试
坚持就完事了17 分钟前
扫描线算法
算法
鱼跃鹰飞20 分钟前
Leetcode尊享面试100题:252. 会议室
算法·leetcode·面试
教游泳的程序员21 分钟前
【面试问题精选】java开发工程师
python·面试·职场和发展
程序员-King.21 分钟前
二分查找——算法总结与教学指南
数据结构·算法
Zevalin爱灰灰23 分钟前
现代控制理论——第三章 线性控制系统的能控性和能观性
线性代数·算法·现代控制
kklovecode24 分钟前
C语言之头文件,宏和条件编译
c语言·开发语言·算法
Xの哲學36 分钟前
Linux自旋锁深度解析: 从设计思想到实战应用
linux·服务器·网络·数据结构·算法
晚风吹长发39 分钟前
深入理解Linux中用户缓冲区,文件系统及inode
linux·运维·算法·链接·缓冲区·inode