506 相對名次

2021-10-21 19:14:11 字數 1038 閱讀 8726

給出 n 名運動員的成績,找出他們的相對名次並授予前三名對應的獎牌。前三名運動員將會被分別授予 「金牌」,「銀牌」 和「 銅牌」(「gold medal」, 「silver medal」, 「bronze medal」)。

(注:分數越高的選手,排名越靠前。)

示例 1:

輸入: [5, 4, 3, 2, 1]

輸出: [「gold medal」, 「silver medal」, 「bronze medal」, 「4」, 「5」]

解釋: 前三名運動員的成績為前三高的,因此將會分別被授予 「金牌」,「銀牌」和「銅牌」 (「gold medal」, 「silver medal」 and 「bronze medal」).

餘下的兩名運動員,我們只需要通過他們的成績計算將其相對名次即可。

# 遍歷排序後的score,將值、索引存至字典中,更改值為題目所求,最後遍歷score作為字典鍵返回結果列表

class

solution

:def

findrelativeranks

(self, score: list[

int])-

> list[

str]

: s =

sorted

(score, reverse=

true

) dic =

for i, val in

enumerate

(s):

i +=

1if i ==1:

dic[val]

="gold medal"

if i ==2:

dic[val]

="silver medal"

if i ==3:

dic[val]

="bronze medal"

if i >3:

dic[val]

=str

(i)return

[dic.get(i)

for i in score]

506 相對名次(字典)

1.問題描述 給出 n 名運動員的成績,找出他們的相對名次並授予前三名對應的獎牌。前三名運動員將會被分別授予 金牌 銀牌 和 銅牌 gold medal silver medal bronze medal 注 分數越高的選手,排名越靠前。示例 1 輸入 5,4,3,2,1 輸出 gold medal...

Leetcode 506相對名次

給出n名運動員的成績,找出他們的相對名次並授予前三名對應的獎牌。前三名運動員將會被分別授予 金牌 銀牌 和 銅牌 gold medal silver medal bronze medal 注 分數越高的選手,排名越靠前。示例 1 輸入 5,4,3,2,1 輸出 gold medal silver m...

LeetCode506 相對名次

給出 n 名運動員的成績,找出他們的相對名次並授予前三名對應的獎牌。前三名運動員將會被分別授予 金牌 銀牌 和 銅牌 gold medal silver medal bronze medal 注 分數越高的選手,排名越靠前。示例 1 n 是乙個正整數並且不會超過 10000。所有運動員的成績都不相同...