标签:begin 遍历 饼干 int 孩子 455 力扣 数组
455. 分发饼干
题目要求:
假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。
对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] >= g[i] ,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。
题解思路:
- 对两个数组进行排序(题目没说是有序。虽然看例子是有序的。);
- 遍历两个数组(每次遍历的饼干数组开始是从去掉符合条件或者不符合条件的饼干后开始的。(有点绕));
- 符合条件,将存放满足条件的变量值+1;
- 返回最大数值。
题解代码:
class Solution:
def findContentChildren(self, g: List[int], s: List[int]) -> int:
#先对两个数组排序
g.sort()
s.sort()
#计算两个数组的长度
ng = len(g)
sg = len(s)
#初始化符合条件的输出nums为0
nums = 0
#初始化店里到的第一个饼干的位置
begin = 0
#遍历胃口值得数组
for i in range(ng):
#遍历没有把饼干分出去的子数组
for j in range(begin,sg):
#判断是否满足条件
##符合分配要求则nums+1;begin+1
if g[i] <= s[j]:
nums +=1
begin +=1
break
##不符合条件,说明饼干太小,遍历下一个饼干begin+1
else:
begin += 1
continue
return nums
(“It may not be pretty, but we headed to the city.(其貌不扬,但仍乘风破浪。)
”FIGHTING. . . .)
标签:begin,遍历,饼干,int,孩子,455,力扣,数组 来源: https://blog.csdn.net/cjx14060307101/article/details/114656424
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。