问题描述
给出一个单词后,帮助他找到出现最多的字母和这个字母出现的次数。
输入描述
输入一行包含一个单词,单词只由小写英文字母组成。
输出描述
输出两行,第一行包含一个英文字母,表示单词中出现得最多的字母是哪个。如果有多个字母出现的次数相等,输出字典序最小的那个。
第二行包含一个整数,表示出现得最多的那个字母在单词中出现的次数。
问题分析
输入的都是小写英文字母,第一行输出出现次数最多的字母,第二行输出该字母出现的次数。
关键:当字母出现次数相同时,按字母字典序最小的输出
问题求解
word = input()#单词输入
word_set = list(set(word))#字母去重
word_set = sorted(word_set,key=ascii)#字母按照ascii码从小到大排序
max = 0#便于输出字母出现的最大次数
for i in word_set:#该循环找出字母出现的最大次数
count = word.count(i)
if max < count:
max = count
for i in word_set:#该循环找出出现最大次数的字母
if word.count(i) == max:
print(i)
break#这条必须有,因为如果两个或多个字母出现的次数一样的时候,按照字典序小的输出,即输出第一个即可
print(max)