package main
import (
"fmt"
"strings"
)
func getRanges(input string) []string {
var result []string
runes := []rune(input)
for i := 0; i < len(runes); i++ {
start := i
for i < len(runes)-1 && runes[i] == runes[i+1] {
i++
}
end := i
if start != end {
result = append(result, fmt.Sprintf("%d-%d", start, end))
} else {
result = append(result, fmt.Sprintf("%d", start))
}
}
return result
}
func main() {
input := "aaabbaacc"
ranges := getRanges(input)
output := strings.Join(ranges, ", ")
fmt.Printf("Ranges: %s\n", output)
}