每日一題 相對名次

2021-10-19 06:56:03 字數 1058 閱讀 7861

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

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

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

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

解釋: 前三名運動員的成績為前三高的,因此將會分別被授予 「金牌」,「銀牌」和「銅牌」 (「gold medal」,「silver medal」 and 「bronze medal」). 餘下的兩名運動員,我們只需要通過他們的成績計算將其相對名次即可。

n 是乙個正整數並且不會超過 10000。

所有運動員的成績都不相同。

class

solution

:def

findrelativeranks

(self, nums)

: sort_nums = nums[:]

sort_nums.sort(reverse=

true

)for i in

range

(len

(nums)):

if i ==0:

nums[nums.index(sort_nums[0]

)]="gold medal"

elif i ==1:

nums[nums.index(sort_nums[1]

)]="silver medal"

elif i ==2:

nums[nums.index(sort_nums[2]

)]="bronze medal"

else

: nums[nums.index(sort_nums[i])]

=str

(i +1)

return nums

每日一題 陣列的相對排序

給你兩個陣列,arr1 和 arr2,arr2 中的元素各不相同 arr2 中的每個元素都出現在 arr1 中對 arr1 中的元素進行排序,使 arr1 中項的相對順序和 arr2 中的相對順序相同。未在 arr2 現過的元素需要按照公升序放在 arr1 的末尾。輸入 arr1 2,3,1,3,2...

每日一題 1

題目詳情 peter喜歡玩數字遊戲,但數獨這樣的遊戲對他來說太簡單了,於是他準備玩乙個難的遊戲。遊戲規則是在乙個n n的 裡填數,規則 對於每個輸入的n,從左上角開始,總是以對角線為起點,先橫著填,再豎著填。這裡給了一些樣例,請在樣例中找到規律並把這個n n的 列印出來吧。輸入描述 多組測試資料 資...

每日一題2018 3 21

leetcode 2 模擬十進位制運算考察單鏈表基本操作。題無難點,個人基礎需要提高。definition for singly linked list.struct listnode class solution while p while q if shi val s next null ret...