import ( "fmt" ) func summaryRanges(nums []int) (ranges []string) { for beg, end := 0, 0; beg < len(nums); beg = end { for end = beg + 1; end < len(nums) && nums[end]-nums[end-1] == 1; end++ { } if beg+1 == end { ranges = append(ranges, fmt.Sprintf("%d", nums[beg])) } else { ranges = append(ranges, fmt.Sprintf("%d->%d", nums[beg], nums[end-1])) } } return }