力扣2517.礼盒的最大甜蜜度

力扣2517.礼盒的最大甜蜜度

  • 二分答案求最小值

    • 排完序判断是否有k个差距至少为mid的元素
    • 别用i遍历 可能会越界 用 : 有多少取多少
cpp 复制代码
  class Solution {
  public:
      int maximumTastiness(vector<int>& price, int k) {
          ranges::sort(price);
          auto check = [&](int mid) -> bool
          {
              int res=1,pre = price[0];
              for(auto p : price)
              {
                  if(p >= pre + mid)
                  {
                      pre = p;
                      res++;
                  }
              }
              return res >= k;
          };
          int l = 0,r = ranges::max(price);
          while(l<r)
          {
              int mid = l + r + 1>> 1;
              if(check(mid)) l = mid;
              else r = mid - 1;
          }
          return l;
      }
  };
相关推荐
lengxuenong16 分钟前
区间覆盖问题 · 简明学习手册1
java·学习·算法
明志数科28 分钟前
人类视频与机器人示教的数据配比:分层训练的数据采购与采集设计
人工智能·算法
Ivanqhz40 分钟前
MoE 原理、TC/EC 路由、LSH-MoE 与负载均衡浅析
运维·网络·人工智能·深度学习·算法·机器学习·负载均衡
Sarvartha43 分钟前
栈的四则运算、栈的递归应用
数据结构·算法
stolentime1 小时前
CF2277E Tree Guessing题解
c++·算法·贪心算法·交互·ad-hoc
杨逢昌工厂6S管理1 小时前
126-杨逢昌6S三环体系:越做越乱的现场熵增机理与基准化治理——一线现场诊断笔记
经验分享·笔记·职场和发展·学习方法
逐光者9331 小时前
杨氏模量:从定义到工程应用
算法
荆棘鸟智能2 小时前
扬尘在线监测数据接入与异常清洗:从断点补传到质量审计
人工智能·算法·系统架构
文丑颜不良啊2 小时前
LeetCode926~950题目解析
java·leetcode
动词ing3 小时前
【题目练习】旋转图像
算法