字典 48ms 4692kb
def beautiful(x):
lst=list(x)
# 输出个数字典
lst_a=set(lst)
lst_num=[]
for i in lst_a:
a=lst.count(i)
lst_num.append(a)
# 输出字典从大到小排序
dic={lst_a:lst_num for lst_a,lst_num in zip(lst_a,lst_num)}
dic=sorted(dic.items(),key=lambda x:x[1],reverse=True)
# 计算漂亮数
num=26
count=0
for i in range(len(lst_a)):
num_i=dic[i][1]
count+=num*num_i
num-=1
return(count)
while 1:
try:
a=int(input())
for j in range(a):
b=input()
print(beautiful(b))
except:
break