力扣刷题 day51:10

编程入门 行业动态 更新时间:2024-10-27 18:25:01

<a href=https://www.elefans.com/category/jswz/34/1671036.html style=力扣刷题 day51:10"/>

力扣刷题 day51:10

1.分发饼干

假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。

对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] >= g[i],我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。

方法一:排序 

#方法一:排序
def findContentChildren(g,s):g.sort()s.sort() #先排序res=0 #记录第几个人for i in range(len(s)):if res<len(g) and g[res]<=s[i]:res+=1 #满足题意,可以分饼干,然后找下一个人return res

2.相对名次 

给你一个长度为 n 的整数数组 score ,其中 score[i] 是第 i 位运动员在比赛中的得分。所有得分都 互不相同 。

运动员将根据得分 决定名次 ,其中名次第 1 的运动员得分最高,名次第 2 的运动员得分第 2 高,依此类推。运动员的名次决定了他们的获奖情况:

名次第 1 的运动员获金牌 "Gold Medal" 。
名次第 2 的运动员获银牌 "Silver Medal" 。
名次第 3 的运动员获铜牌 "Bronze Medal" 。
从名次第 4 到第 n 的运动员,只能获得他们的名次编号(即,名次第 x 的运动员获得编号 "x")。
使用长度为 n 的数组 answer 返回获奖,其中 answer[i] 是第 i 位运动员的获奖情况。

方法一:排序+字典 

#方法一:排序+字典
def findRelativeRanks(score):tem=sorted(score,reverse=True) #从大到小排序,并且用tem接收排序后的数组a=["Gold Medal","Silver Medal","Bronze Medal"] #排名dic={} #字典保存对应的名次for i in range(len(tem)):if i<3:dic[tem[i]]=a[i]else:dic[tem[i]]=str(i+1)return [dic[i] for i in score] #按照原来的顺序

更多推荐

力扣刷题 day51:10

本文发布于:2023-12-05 15:32:24,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1664575.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:力扣刷题

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!