題目描述
給出乙個名字,該名字有26個字串組成,定義這個字串的「漂亮度」是其所有字母「漂亮度」的總和。
每個字母都有乙個「漂亮度」,範圍在1到26之間。沒有任何兩個字母擁有相同的「漂亮度」。字母忽略大小寫。
給出多個名字,計算每個名字最大可能的「漂亮度」。
輸入描述:
整數n,後續n個名字
輸出描述:
每個名稱可能的最大漂亮程度
示例1
輸入
2zhangsan
lisi
輸出
192101
參考:
from collections import執行結果: 答案正確:恭喜!您提交的程式通過了所有的測試用例counter
while
true:
try:
n =int(input().strip())
for _ in
range(n):
num =list(input().strip())
re = counter(num) #
使用 counter
res =
for s in
re:#
提取 counter資訊,不能使用keys或values
res.sort(reverse =true)
n =len(res)
m =0
k = 26
for s in
res:
m += k*s
k -= 1
(m)
except
:
break
from collections import counter執行結果: 答案正確:恭喜!您提交的程式通過了所有的測試用例while true:
try:
a=int(input())
for i in range(a):
c,start,res=counter(input()),26,0
for j in c.most_common():
res+=j[1]*start
start-=1
print(res)
except:
break
45 名字的漂亮度
題目描述 給出乙個名字,該名字有26個字串組成,定義這個字串的 漂亮度 是其所有字母 漂亮度 的總和。每個字母都有乙個 漂亮度 範圍在1到26之間。沒有任何兩個字母擁有相同的 漂亮度 字母忽略大小寫。給出多個名字,計算每個名字最大可能的 漂亮度 輸入描述 整數n,後續n個名字 輸出描述 每個名稱可能...
名字的漂亮度 華為機試 C C
給出乙個名字,該名字有26個字串組成,定義這個字串的 漂亮度 是其所有字母 漂亮度 的總和。每個字母都有乙個 漂亮度 範圍在1到26之間。沒有任何兩個字母擁有相同的 漂亮度 字母忽略大小寫。給出多個名字,計算每個名字最大可能的 漂亮度 整數n,後續n個名字 每個名稱可能的最大漂亮程度 示例12 zh...
HJ45 名字的漂亮度(雜湊,sort)
說實話題目表達得有點歧義。並非a到z的 漂亮度 為1 26,而是出現次數最多的字母的 漂亮度 為26,出現次數第二少的字母則為25,以此類推。另外注意本題大小寫不區分。如果使用大頂堆則有點大材小用了,可以直接使用sort進行從小到大排序字母出現的次數。include include include ...