力扣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;
      }
  };
相关推荐
ytttr87316 小时前
基于libusb的用户空间UVC相机库
算法
bybitq16 小时前
Reactor 模型 vs Proactor 模型:区别与代码示例
算法
jimy116 小时前
C 语言的 static 关键字作用
c语言·开发语言·算法
七颗糖很甜17 小时前
基于IRI-2016模型计算电子密度、TEC、foF2等参数的技术原理与代码实现
大数据·python·算法
杰克·Pyo17 小时前
AI 悄然而至 ERP 行业
人工智能·职场和发展
风筝在晴天搁浅17 小时前
LeetCode 143.重排链表
算法·leetcode·链表
碧海银沙音频科技研究院17 小时前
如何彻底关闭360壁纸
人工智能·深度学习·算法
sali-tec17 小时前
C# 基于OpenCv的视觉工作流-章57-人脸识别
图像处理·人工智能·opencv·算法·计算机视觉
计算机安禾17 小时前
【Linux从入门到精通】第43篇:I/O调度算法与磁盘性能优化
linux·算法·性能优化
这张生成的图像能检测吗17 小时前
(论文速读)FreDN:基于可学习频率分解的时间序列预测的频谱解纠缠
人工智能·深度学习·算法·机器学习·时序模型