贪心-分发饼干(代码片段)

最差的研究生 最差的研究生     2023-04-01     275

关键词:

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

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

示例 1:

输入: g = [1,2,3], s = [1,1]
输出: 1
解释: 
你有三个孩子和两块小饼干,3个孩子的胃口值分别是:1,2,3。
虽然你有两块小饼干,由于他们的尺寸都是1,你只能让胃口值是1的孩子满足。
所以你应该输出1。

示例 2:

输入: g = [1,2], s = [1,2,3]
输出: 2
解释: 
你有两个孩子和三块小饼干,2个孩子的胃口值分别是1,2。
你拥有的饼干数量和尺寸都足以让所有孩子满足。
所以你应该输出2.

提示:

  • 1 <= g.length <= 3 * 10^4
  • 0 <= s.length <= 3 * 10^4
  • 1 <= g[i], s[j] <= 2^(31) - 1

参考答案

将大的饼干尽量分给大胃口学生

class Solution:
    def findContentChildren(self, g: List[int], s: List[int]) -> int:
        n = len(g)
        m = len(s)
        s.sort(reverse=True)
        g.sort(reverse=True)
        i = 0
        j = 0
        ans = 0
        while i<n and j<m:
            if s[j]>=g[i]:
                i += 1
                j += 1
                ans += 1
            else:
                i += 1
        return ans

贪心算法——leetcode455.分发饼干(代码片段)

文章目录一、题目二、题解一、题目假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值g[i],这是能让孩子们满足胃口的饼干的最小尺... 查看详情

贪心——力扣455.分发饼干&&力扣376.摆动序列(代码片段)

贪心(思想:局部最优-->整体最优)力扣455.分发饼干题目描述思路代码力扣376.摆动序列题目描述思路代码力扣455.分发饼干题目描述思路代码我们应该怎么贪才是最合理,联想局部最优到整体最优,我们是... 查看详情

leetcode刷题100天—455.分发饼干(贪心)—day40(代码片段)

前言:作者:神的孩子在歌唱大家好,我叫运智455.分发饼干难度简单376收藏分享切换为英文接收动态反馈假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每... 查看详情

leetcode刷题100天—455.分发饼干(贪心)—day40(代码片段)

前言:作者:神的孩子在歌唱大家好,我叫运智455.分发饼干难度简单376收藏分享切换为英文接收动态反馈假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每... 查看详情

文巾解题455.分发饼干(代码片段)

1题目描述 2解题思路:贪心        为了尽可能满足最多数量的孩子,从贪心的角度考虑,应该按照孩子的胃口从小到大的顺序依次满足每个孩子,且对于每个孩子,应该选择可以满足这个孩子的胃口且尺... 查看详情

贪心算法(代码片段)

一、贪心算法1.455.分发饼干问题假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,... 查看详情

贪心-分发饼干(代码片段)

假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有... 查看详情

[leetcode刷题]——贪心思想(代码片段)

此篇博客主要记录力扣中的贪心思想。 一、分配饼干455.分发饼干  easy 2021-06-10  假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃... 查看详情

java求解分发饼干(代码片段)

文章目录一、题目二、贪心算法分析三、代码四、总结一、题目假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值g[i],这是能让孩子... 查看详情

贪心算法题目(代码片段)

455.分发饼干classSolution/**思路:将尽可能多的饼干分出去->每人最好吃得刚刚饱->从饥饿度最低的和最小的饼干开始匹配*/publicintfindContentChildren(int[]g,int[]s)Arrays.sort(g);//将两个数组进行排序Arrays.sort(s);inti=0;intj=0;intcoun... 查看详情

贪心算法(代码片段)

455.分发饼干假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值 gi,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个尺寸sj&n... 查看详情

贪心算法(java)(代码片段)

贪心算法:贪心算法的主要思想是,在既定的策略下总是能在当前求出当前的最优解(局部最优解)而不是全局最优解。只是这样说可能比较难理解,下面从两道leetcode上的题目入手,来体会贪心算法。1.... 查看详情

算法千题案例⚡️每日leetcode打卡⚡️——57.分发饼干(代码片段)

...a;数组排序,一次遍历🌻Java方法一:排序+贪心💬总结📢前言🚀算法题🚀🌲每天打卡一道算法题,既是一个学习过程,又是一个分享的过程 查看详情

贪心分饼干/分水杯(代码片段)

给孩子们分一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个尺寸s[j]。如果s[j]>=g[i],我们可以将这个饼干j分配给孩... 查看详情

leetcode0455.分发饼干(代码片段)

【LetMeFly】455.分发饼干力扣题目链接:https://leetcode.cn/problems/assign-cookies/假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值 g[i],... 查看详情

代码随想录day31455.分发饼干|376.摆动序列|53.最大子序和(代码片段)

...一个,全局最优就是喂饱尽可能多的小孩。可以尝试使用贪心策略,先将饼干数组和小孩数组排序。然后从后向前遍历小孩数组,用大饼干优先满足胃口大的,并统计满足小孩数量。classSolutionpublicintfindContentChildren(int[]g,int[]s)Arra... 查看详情

leetcode455.分发饼干(c++)(代码片段)

455.分发饼干1题目描述2示例描述2.1示例12.2示例23解题提示4解题思路5代码详解1题目描述假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值g[... 查看详情

leetcode455.分发饼干(代码片段)

假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有... 查看详情