其他分享
首页 > 其他分享> > 2020-12-25

2020-12-25

作者:互联网

455、 分发饼干

在这里插入图片描述
刚开始没有仔细阅读题目要求,上去就干 导致走了弯路
题目中说的胃口值是使孩子们满足的最小值(刚开始没有注意到)

class Solution:
    def findContentChildren(self, g: List[int], s: List[int]) -> int:
        result = 0
        g_ = sorted(g)
        s_ = sorted(s)
        a=0
        b=0
        while a < len(g_) and b < len(s_) :
            if g_[a] <= s_[b] :
                result += 1
                a+=1
                b+=1
            else:
                b+=1
        return result

我是首先将两个列表进行了排序,目的是为了尽可能地满足更多的孩子 避免饼干的大小与使孩子满足的最小胃口值相差太多

a代表当前的孩子; b代表当前的饼干

先从最小的饼干与需求最小的孩子开始 : 如果饼干>=胃口值 那么即可满足这个孩子
并两者都向下一步推进 也就是a和b都加1 result+1
如果当前的饼干大小不能满足当前的胃口值并且孩子只能拿一块饼干所以要跳过当前的饼干 试一下下一块饼干是否满足 也就是b+1 而孩子不变

标签:25,12,饼干,int,孩子,胃口,满足,2020,当前
来源: https://blog.csdn.net/d_l_w_d_l_w/article/details/111703795