力扣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;
      }
  };
相关推荐
rou2 分钟前
LeetCode410.分割数组的最大值
算法
垆边人似月.3 分钟前
华为题:字符串中最长连续数字串
开发语言·c++·算法
_不会dp不改名_5 分钟前
leetcode_3273 数位平方和的最大值
算法·leetcode·职场和发展
vivo互联网技术6 分钟前
SSR-Merge:把 LoRA 合并从"参数算术"变成"信号路由" | ICML 2026
人工智能·算法·计算机视觉
罗湖老棍子7 分钟前
座位安排(洛谷-P2071)
c++·算法·图论·匈牙利算法·二分图匹配
巴糖13 分钟前
挑礼物这件事,暴露了你做选择时最大的问题
算法
用户73416810354815 分钟前
控制与监测特征的联合表征:复杂动力装备变工况故障诊断的发展方向
算法
垆边人似月.20 分钟前
华为题:无重复字符的最长子串变种
算法
糖果豆豆26 分钟前
灾难性遗忘不是"新旧打架"——旧知识记不住,是因为它没长成"环"
算法
垆边人似月.28 分钟前
华为题:任务调度
数据结构·c++·算法