華為機試45 名字的漂亮度

2022-07-18 00:33:11 字數 1302 閱讀 1292

題目描述

給出乙個名字,該名字有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

print

(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 ...