|
@@ -0,0 +1,17 @@
|
|
|
+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
|
|
|
+}
|
|
|
+
|