LeetCode每日一题495. 提莫攻击
495. 提莫攻擊
在《英雄聯(lián)盟》的世界中,有一個叫 “提莫” 的英雄。他的攻擊可以讓敵方英雄艾希(編者注:寒冰射手)進入中毒狀態(tài)。
當(dāng)提莫攻擊艾希,艾希的中毒狀態(tài)正好持續(xù) duration 秒。
正式地講,提莫在 t 發(fā)起發(fā)起攻擊意味著艾希在時間區(qū)間 [t, t + duration - 1](含 t 和 t + duration - 1)處于中毒狀態(tài)。如果提莫在中毒影響結(jié)束 前 再次攻擊,中毒狀態(tài)計時器將會 重置 ,在新的攻擊之后,中毒影響將會在 duration 秒后結(jié)束。
給你一個 非遞減 的整數(shù)數(shù)組 timeSeries ,其中 timeSeries[i] 表示提莫在 timeSeries[i] 秒時對艾希發(fā)起攻擊,以及一個表示中毒持續(xù)時間的整數(shù) duration 。
返回艾希處于中毒狀態(tài)的 總 秒數(shù)。
1 <= timeSeries.length <= 104
0 <= timeSeries[i], duration <= 107
timeSeries 按 非遞減 順序排列
示例1:
輸入:timeSeries = [1,4], duration = 2
輸出:4
解釋:提莫攻擊對艾希的影響如下:
· 第 1 秒,提莫攻擊艾希并使其立即中毒。中毒狀態(tài)會維持 2 秒,即第 1 秒和第 2 秒。
· 第 4 秒,提莫再次攻擊艾希,艾希中毒狀態(tài)又持續(xù) 2 秒,即第 4 秒和第 5 秒。
艾希在第 1、2、4、5 秒處于中毒狀態(tài),所以總中毒秒數(shù)是 4 。
示例2:
輸入:timeSeries = [1,2], duration = 2
輸出:3
解釋:提莫攻擊對艾希的影響如下:
· 第 1 秒,提莫攻擊艾希并使其立即中毒。中毒狀態(tài)會維持 2 秒,即第 1 秒和第 2 秒。
· 第 2 秒,提莫再次攻擊艾希,并重置中毒計時器,艾希中毒狀態(tài)需要持續(xù) 2 秒,即第 2 秒和第 3 秒。
艾希在第 1、2、3 秒處于中毒狀態(tài),所以總中毒秒數(shù)是 3 。
代碼:
class Solution {public int findPoisonedDuration(int[] timeSeries, int duration) {int right = timeSeries[0] + duration - 1;int res = 0;for(int i = 1; i < timeSeries.length; i++){if(timeSeries[i] > right){res += duration;right = timeSeries[i] + duration - 1;continue;}res += timeSeries[i] - timeSeries[i - 1];right = timeSeries[i] + duration - 1;}res += duration;return res;} }執(zhí)行結(jié)果:
總結(jié): LeetCode打卡第十五天,通過每天做題可以看到自己的不足,提升自己的能力,在做題中慢慢進步,但是代碼編程能力還有待提高,還需要繼續(xù)加油!
總結(jié)
以上是生活随笔為你收集整理的LeetCode每日一题495. 提莫攻击的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Bootstrap栅格参数
- 下一篇: 【华为OD机试 2023最新 】 最短木