这道题为中等题
个人起初并没有读懂题目,以为给你的是一个区间,结果是一个列表,列表里的每一个数代表他放毒的时间点。这个题还是挺简单的,遍历列表,每次和前一个元素比较,如果大于中毒时间,那么总时间就加上duration,否则总时间就加上两个元素的差,最后返回num+duration
1 class Solution(object): 2 def findPoisonedDuration(self, timeSeries, duration): 3 """ 4 :type timeSeries: List[int] 5 :type duration: int 6 :rtype: int 7 """ 8 if not timeSeries: return 0 9 num = 0 10 for i in xrange(1, len(timeSeries)): 11 if timeSeries[i] - timeSeries[i-1] >= duration: num += duration 12 else: num += timeSeries[i] - timeSeries[i-1] 13 return num + duration
原文:http://www.cnblogs.com/liuxinzhi/p/7594407.html