(Python)LeetCode 506:相对名次

题目:

思路:

先找到当前列表中最大的元素,然后再找到它的下标,找到后记录在answer列表里,同时要把已经找到的这个列表中最大的元素值设为最小的,以便找到第二大、第三大、、、的数,这里我是设置为了-1,因为所有的成绩都是大于-1的,所以-1是最小的。

代码:

class Solution:
    def findRelativeRanks(self, score: List[int]) -> List[str]:
        answer = []
        count = 0
        for i in score:
            answer.append(0)
            count+=1
        i = 1
        while i <= count:
            index = score.index(max(score))
            if i == 1:
                answer[index] = 'Gold Medal'
            elif i == 2:
                answer[index] = 'Silver Medal'
            elif i == 3:
                answer[index] = 'Bronze Medal'
            else:
                answer[index] = str(i)
            score[index]=-1
            i+=1
        return answer

结果:

关于LeetCode的解题方法欢迎大家一起讨论~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值