解题思路:
本题用数组实现简单hash map比较简单
1.因为整数的每一位都在0-9之间,所以定义数组[10]就够了
2.用字符串读入,这里用GO我就直接转成字节数组,遍历一遍数组,‘9’-'0’为整数9,对应的下标+1
3.遍历一遍存储个数的数组就ok了
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
var number [10]int
var inputReader *bufio.Reader
inputReader = bufio.NewReader(os.Stdin)
str, _ := inputReader.ReadString('\n')
bStr := []byte(str)//转成byte数组
for i:=0; i<len(bStr)-1; i++ {
number[bStr[i] - '0']++
}
for j:=0; j<10; j++ {
if number[j] > 0 {
fmt.Printf("%d:%d\n", j, number[j])
}
}
}