Given a sorted integer array without duplicates, return the summary of its ranges.
Example 1:
1 2 3
Input: [0,1,2,4,5,7] Output: ["0->2","4->5","7"] Explanation: 0,1,2 form a continuous range; 4,5 form a continuous range.
Example 2:
1 2 3
Input: [0,2,3,4,6,8,9] Output: ["0","2->4","6","8->9"] Explanation: 2,3,4 form a continuous range; 8,9 form a continuous range.
Solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14
classSolution: defsummaryRanges(self, nums: List[int]) -> List[str]: res = [] start, ls = 0, len(nums) for i in range(ls): if i + 1 < ls and nums[i + 1] == nums[i] + 1: continue if i == start: res.append(str(nums[start])) else: res.append("%d->%d" % (nums[start], nums[i])) start = i + 1 return res