Solution 1 - Linear Scan
Sum min(gap, duration) for each consecutive pair, plus duration for the last attack.
Sum min(gap, duration) for each consecutive pair, plus duration for the last attack.
""" 0495.1 - Teemo Attacking - Solution 1 - Linear Scan """
from typing import List
class Solution:
def findPoisonedDuration(self, timeSeries: List[int], duration: int) -> int:
if not timeSeries:
return 0
total = duration
for i in range(1, len(timeSeries)):
total += min(duration, timeSeries[i] - timeSeries[i - 1])
return total
if __name__ == "__main__":
print(Solution().findPoisonedDuration([1,4], 2)) # 4