题解 | #名字的漂亮度#
名字的漂亮度
http://www.nowcoder.com/practice/02cb8d3597cf416d9f6ae1b9ddc4fde3
if __name__ == "__main__":
cnt = int(input())
rcv = []
while cnt > 0:
tmp = []
cnt -= 1
r = input()
for i in r:
tmp.append(i)
#print(tmp)
rcv.append(tmp)
del tmp
for i in rcv:
cntMap = {}
numAry = []
for j in i:
#统计每一个字符出现个数
if cntMap.get(j) == None:
cntMap.update({j : i.count(j)})
for key,val in cntMap.items():
numAry.append(val)
#对所有统计的个数从大到小排序
numAry.sort(reverse=True)
maxVal = 26
totalCnt = 0
#print(numAry)
#例如 zhangsan >> [2 2 1 1 1]
for k in range(0, len(numAry)):
totalCnt += numAry[k] * maxVal
maxVal -= 1
print(totalCnt)
1.重点为统计每一个单词出现次数,并从大到小排序
#例如 zhangsan >> [2 2 1 1 1]
26*2 + 25*2 + 24*1 ...