题解 | #名字的漂亮度#
名字的漂亮度
https://www.nowcoder.com/practice/02cb8d3597cf416d9f6ae1b9ddc4fde3
#按数量排序,数量最多的漂亮数越大 while True: try: #输入数据的数量n n = int(input()) #for循环n次,每次输入一组数据并进行计算 for i in range(n): #输入一组数据 item = input() #分数初始化0 score = 0 #新建字典 dic= {} #for循环字符串的每一项 for j in item: #统计字典的key==j的数量,并赋值value,得到每个key对应的value,即 每个字母的个数 dic[j] = item.count(j) #降序排列字典的value,即字母的个数从大到小排列,并放入列表lst中 lst =sorted(dic.values(),reverse= True) #for循环出现过的字母,按顺序(出现次数)分别得到26,25,24,。。。。分,并相加就得到这一组输入数据的分数 for c in range(len(lst)): score += (26-c)*lst[c] #输出分数 print(score) #接下来进入下一次for循环,处理下一组输入数据 except: break