用python来解PAT乙级1042 字符统计-20-满分

看输出规则时,一眼盯住,有并列时输出最小的那个,然后就想到列表的索引,这样一来列表就需要按照字母次序来排列,所以for循环要从小到大来,但是输入中并补包含全部二十六个字母,所以需要创建字典,我不想用字典,所以把二十六个字母都遍历了,0也保存进了列表,用字母和ASCII码转换的函数chr()和ord()可以很简单,输入时直接全部使小写,然后先遍历a到z,统计出现次数放入列表中,直接取最大值,然后最大值的索引+97就是ASCII编码,因为a的编码是97

代码超级简单,五行:

s = input().lower()
res = []
for i in range(97,123):
    res.append(s.count(chr(i)))
print(chr(res.index(max(res)) +97) ,max(res))

提交结果:

用python来解PAT乙级1042 字符统计-20-满分