当前位置: 首页 > article >正文

力扣2542.最大子序列的分数

力扣2542.最大子序列的分数

  • 转换 + 最小堆

    • 因为要求找nums2中k数区间的最小值,所以考虑按照nums2从大到小排序
    • 这样枚举nums2中[k-1,n]的数都可以作为最小值
  •   class Solution {
      public:
          long long maxScore(vector<int>& nums1, vector<int>& nums2, int k) {
              int n = nums1.size();
              vector<int> ids(n);
              iota(ids.begin(),ids.end(),0);
              //下标按照nums2的大小排序
              ranges::sort(ids,[&](int i,int j){return nums2[i] > nums2[j];});
      
              //放nums1的数
              priority_queue<int,vector<int>,greater<>> pq;
              long long sum = 0;
              //初始化求前k个数的
              for(int i=0;i<k;i++)
              {
                  sum += nums1[ids[i]];
                  pq.push(nums1[ids[i]]);
              }
              long long ans = sum * nums2[ids[k-1]];
              //枚举nums2[ids[i]]作为最小值
              for(int i=k;i<n;i++)
              {
                  //新的数
                  int x = nums1[ids[i]];
                  //比最小数大,更优
                  if(x > pq.top())
                  {
                      sum += x - pq.top();
                      pq.pop();
                      pq.push(x);
                      ans = max(ans,sum * nums2[ids[i]]);
                  }
              }
              return ans;
          }
      };
    

http://www.kler.cn/a/289434.html

相关文章:

  • 新的服务器Centos7.6 安卓基础的环境配置(新服务器可直接粘贴使用配置)
  • 深入提升Python编程能力的全方位指南
  • ImportError: cannot import name ‘packaging‘ from ‘pkg_resources‘ 的参考解决方法
  • 运维人员必备的 Mac Zsh 配置技巧
  • 赖茅:“酱香酒+羽毛球”营销理念的先驱者与领航者
  • 并查集算法实现
  • 设计模式-离氏替换原则
  • Edge PDF 关闭 提供支持的应用Adobe Acrobat
  • 深度学习-OpenCv的运用(4)
  • 【安全生产】叉车安全带报警器有哪些特点?
  • 数分基础(06)商业分析四种类型简介
  • VsCode + Go + macOS 小白 demo运行
  • 数学建模强化宝典(9)遗传算法
  • 财富趋势金融大模型已通过备案
  • 贪心算法---合并区间
  • Flutter之CRC校验
  • python使用selenium,实现简单爬虫功能
  • 《从C/C++到Java入门指南》- 22.对象的转型
  • 机器学习面试题(9月3日笔记)
  • 跨境多账号登录如何防止IP、cookie和设备关联?
  • pil 常见用法
  • 如何打造在线音乐网站?java springboot架构,vue前端开发,音乐分享新体验
  • sealos快速搭建k8s集群
  • 记录 PyQt6 / PySide 6 自定义边框窗口的 Bug 及可能可行的解决方案:窗口抖动和添加 DWM 环绕阴影的大致原理
  • Java的IO模型详解-BIO,NIO,AIO
  • 常见接口限流算法