《LeetCode之每日一题》:203.提莫攻击
生活随笔
收集整理的這篇文章主要介紹了
《LeetCode之每日一题》:203.提莫攻击
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
提莫攻擊
- 有關題目
- 題解
題目鏈接: 提莫攻擊
有關題目
在《英雄聯盟》的世界中,有一個叫 “提莫” 的英雄。 他的攻擊可以讓敵方英雄艾希(編者注:寒冰射手)進入中毒狀態。當提莫攻擊艾希,艾希的中毒狀態正好持續 duration 秒。正式地講,提莫在 t 發起發起攻擊意味著艾希在時間區間 [t, t + duration - 1](含 t 和 t + duration - 1)處于中毒狀態。 如果提莫在中毒影響結束 前 再次攻擊,中毒狀態計時器將會 重置 ,在新的攻擊之后,中毒影響將會在 duration 秒后結束。給你一個 非遞減 的整數數組 timeSeries , 其中 timeSeries[i] 表示提莫在 timeSeries[i] 秒時對艾希發起攻擊,以及一個表示中毒持續時間的整數 duration 。返回艾希處于中毒狀態的 總 秒數。 示例 1:輸入:timeSeries = [1,4], duration = 2 輸出:4 解釋:提莫攻擊對艾希的影響如下: - 第 1 秒,提莫攻擊艾希并使其立即中毒。中毒狀態會維持 2 秒,即第 1 秒和第 2 秒。 - 第 4 秒,提莫再次攻擊艾希,艾希中毒狀態又持續 2 秒,即第 4 秒和第 5 秒。 艾希在第 1、2、4、5 秒處于中毒狀態,所以總中毒秒數是 4 。 示例 2:輸入:timeSeries = [1,2], duration = 2 輸出:3 解釋:提莫攻擊對艾希的影響如下: - 第 1 秒,提莫攻擊艾希并使其立即中毒。中毒狀態會維持 2 秒,即第 1 秒和第 2 秒。 - 第 2 秒,提莫再次攻擊艾希,并重置中毒計時器,艾希中毒狀態需要持續 2 秒,即第 2 秒和第 3 秒。 艾希在第 1、2、3 秒處于中毒狀態,所以總中毒秒數是 3 。 提示:1 <= timeSeries.length <= 10^4 0 <= timeSeries[i], duration <= 10^7 timeSeries 按 非遞減 順序排列題解
法一:模擬
參考官方題解
法二:
class Solution { public:int findPoisonedDuration(vector<int>& timeSeries, int duration) {int ans = 0;int n = timeSeries.size();for (int i = 0; i < n - 1; i++){ans += min(timeSeries[i + 1] - timeSeries[i], duration);}return ans + duration;//ans 加上timeSeries[n - 1]之后不會重疊的中毒時間} };總結
以上是生活随笔為你收集整理的《LeetCode之每日一题》:203.提莫攻击的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 泾阳县副县长崔巍领导一行莅临秦储指导交流
- 下一篇: 免费的配音软件有哪些?手机上就能操作的