力扣2861.最大合金数

力扣2861.最大合金数

  • 对每一台机器都做一次二分答案

cpp 复制代码
  class Solution {
  public:
      int maxNumberOfAlloys(int n, int k, int budget, vector<vector<int>>& composition, vector<int>& stock, vector<int>& cost) {
          int res = 0;
          int mx = ranges::min(stock) + budget;
          for(auto &comp : composition)
          {
              auto check = [&](long long num) -> bool
              {
                  long long ans=0;
                  for(int i=0;i<n;i++)
                      if(stock[i] < comp[i] * num)
                      {
                          ans += (comp[i] * num - stock[i]) * cost[i];
                          if(ans > budget) return false;
                      }
                  return true;
              };
              int l = res,r = mx + 1;
              while(l < r)
              {
                  int mid = l + r + 1>> 1;
                  if(check(mid)) l = mid;
                  else r = mid - 1;
              }
              res = l;
          }
          return res;
      }
  };
相关推荐
IKUN家族4 小时前
Spring MVC(一)
java·spring·mvc
imuliuliang5 小时前
关于数据结构在算法设计中的核心作用解析7
算法
老马识途2.05 小时前
关于跨域问题的总结
java·前端
都叫我大帅哥6 小时前
Java日期时间三十年战争:从Date考古到LocalDateTime革命,以及数据库与前端的那点事儿
java
Muscleheng6 小时前
SpringBoot 集成 DeepSeek 实现 RAG 文档问答
java·spring boot·ai·springai
2401_894915536 小时前
GEO 搜索优化完整源码从零部署:环境配置、集群搭建全流程
开发语言·python·tcp/ip·算法·unity
2501_936415696 小时前
可变参数&综合练习&斗地主游戏
java·windows·游戏
极客先躯7 小时前
高级java每日一道面试题-2026年05月03日-实战篇[Docker]-如何实现容器化环境的数据加密?
java·运维·docker·容器·金融·加解密·高级面试
普通网友7 小时前
共识算法实现:从工作量证明到权益证明的演进
算法·区块链·共识算法