算法-贪婪篇01-分发饼干

[复制链接]
发表于 2025-10-20 08:46:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
分发饼干

力扣标题链接
标题形貌

假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。
对每个孩子 i,都有一个胃口值 g,这是能让孩子们满足胃口的饼干的最小尺寸;而且每块饼干 j,都有一个尺寸 s[j] 。假如 s[j] >= g,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是满足尽大概多的孩子,并输出这个最大数值。
解题思绪

对小孩的胃口和饼干举行排序,然后都从大端开始往下试着分给小孩;
假如没有分的这个最大的饼干不能满足没有分的小孩的胃口,那么就不给这个小孩分了(怎么感觉是在说找工作呢,胃口大了不是功德,你要顺位往下比别人强的同时还要看剩下的饼干是否符合你的条件。。。)由于当前情况下,没有符合的饼干给这个小孩了,就不管了。
题解

  1. class Solution {
  2. public:
  3.     int findContentChildren(vector<int>& g, vector<int>& s) {
  4.         int ans = 0;
  5.         sort(s.begin(), s.end(), greater<int>());
  6.         sort(g.begin(), g.end(), greater<int>());
  7.         int p1 = 0, p2 = 0;
  8.         while(p1 < g.size() && p2 < s.size()){
  9.             if(s[p2] >= g[p1]){
  10.                 ans++;
  11.                 p1++;
  12.                 p2++;
  13.             }else{
  14.                 p1++;
  15.             }
  16.         }
  17.         return ans;
  18.     }
  19. };
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告
回复

使用道具 举报

×
登录参与点评抽奖,加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表