力扣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;
      }
  };
相关推荐
华清远见成都中心4 分钟前
嵌入式工程师技术面试有哪些注意事项?
面试·职场和发展
沐雪架构师8 分钟前
大模型Agent面试精选15题(第三辑)LangChain框架与Agent开发的高频面试题
面试·职场和发展
跨境卫士苏苏14 分钟前
突围新品广告泥潭:亚马逊广告底层逻辑大重构
大数据·人工智能·算法·重构·亚马逊·防关联
旧梦吟38 分钟前
脚本网页 三人四字棋
前端·数据库·算法·css3·html5
凯_kyle41 分钟前
Python 算法竞赛 —— 基础篇(更新ing)
笔记·python·算法
lizz311 小时前
C++操作符重载深度解析
java·c++·算法
阿拉斯攀登1 小时前
电子签名:笔迹特征比对核心算法详解
人工智能·算法·机器学习·电子签名·汉王
ytttr8731 小时前
matlab进行利用遗传算法对天线阵列进行优化
开发语言·算法·matlab
一招定胜负1 小时前
机器学习算法三:决策树
算法·决策树·机器学习
无限进步_1 小时前
【C语言】队列(Queue)数据结构的实现与分析
c语言·开发语言·数据结构·c++·算法·链表·visual studio