45 名字的漂亮度

2021-09-09 05:43:41 字數 837 閱讀 7663

題目描述

給出乙個名字,該名字有26個字串組成,定義這個字串的「漂亮度」是其所有字母「漂亮度」的總和。

每個字母都有乙個「漂亮度」,範圍在1到26之間。沒有任何兩個字母擁有相同的「漂亮度」。字母忽略大小寫。

給出多個名字,計算每個名字最大可能的「漂亮度」。

輸入描述:

整數n,後續n個名字

輸出描述:

每個名稱可能的最大漂亮程度

示例1輸入

2zhangsan

lisi

輸出192

101思路:統計字元出現的次數組成字典,按次數降序排序

出現次數最多的給最大漂亮度,以此類推

while true:

try:

n=int(input())

for i in range(n):

string=input()

strdict=dict()

for each in string:

if each in strdict:

strdict[each]+=1

else:

strdict[each]=1

strlist=sorted(strdict.items(),key=lambda x:x[1],reverse=true)

beautylist=

result=0

for i in range(len(strlist)):

result += strlist[i][1] *beautylist[i]

print(result)

except:

break

華為機試45 名字的漂亮度

題目描述 給出乙個名字,該名字有26個字串組成,定義這個字串的 漂亮度 是其所有字母 漂亮度 的總和。每個字母都有乙個 漂亮度 範圍在1到26之間。沒有任何兩個字母擁有相同的 漂亮度 字母忽略大小寫。給出多個名字,計算每個名字最大可能的 漂亮度 輸入描述 整數n,後續n個名字 輸出描述 每個名稱可能...

HJ45 名字的漂亮度(雜湊,sort)

說實話題目表達得有點歧義。並非a到z的 漂亮度 為1 26,而是出現次數最多的字母的 漂亮度 為26,出現次數第二少的字母則為25,以此類推。另外注意本題大小寫不區分。如果使用大頂堆則有點大材小用了,可以直接使用sort進行從小到大排序字母出現的次數。include include include ...

名字的漂亮度

給出乙個名字,該名字有26個字串組成,定義這個字串的 漂亮度 是其所有字母 漂亮度 的總和。每個字母都有乙個 漂亮度 範圍在1到26之間。沒有任何兩個字母擁有相同的 漂亮度 字母忽略大小寫。給出多個名字,計算每個名字最大可能的 漂亮度 輸入 整數n,後續n個名字 n個字串,每個表示乙個名字 輸出 每...