题目
实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。
注意每个输入文件有多组输入,即多个字符串用回车隔开
输入描述
字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节。
输出描述
删除字符串中出现次数最少的字符后的字符串。
示例1
输入
abcdd
aabcddd
输出
dd
aaddd
解法参考
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
input := bufio.NewScanner(os.Stdin)
for input.Scan() {
var str = input.Text()
m := make(map[byte]int)
for i := range str {
m[str[i]]++
}
min := 20
for _, v := range m {
if v < min {
min = v
}
}
for i := range str {
if m[str[i]] != min {
fmt.Print(string(str[i]))
}
}
fmt.Println()
}
}