力扣621.任务调度器

力扣621.任务调度器

    • 桶思想
    • 当桶放不满时 答案为桶面积 maxcount(最后一行) + (max - 1)(n+1)
    • 当桶放的满时 答案为任务总数 tasks.size()
    • 最终两者取大即可
cpp 复制代码
  class Solution {
  public:
      int leastInterval(vector<char>& tasks, int n) {
          int len = tasks.size();
          vector<int> vec(26);
          for(char c:tasks) vec[c-'A']++;
          sort(vec.begin(),vec.end(),[](int &x,int &y){
              return x > y;
          });
          int cnt = 1;
          while(cnt < vec.size() && vec[cnt] == vec[0]) cnt ++;
          return max(len,cnt+(n+1)*(vec[0]-1) );
      }
  };
相关推荐
NAGNIP14 分钟前
Transformer注意力机制——MHA&MQA&GQA
人工智能·算法
NAGNIP19 分钟前
一文搞懂KV-Cache
人工智能·算法
CoovallyAIHub25 分钟前
RTMPose:重新定义多人姿态估计的“实时”标准!
深度学习·算法·计算机视觉
爱喝茶的小茶40 分钟前
周赛98补题
开发语言·c++·算法
小庞在加油2 小时前
《dlib库中的聚类》算法详解:从原理到实践
c++·算法·机器学习·数据挖掘·聚类
ComputerInBook2 小时前
C++ 标准模板库算法之 transform 用法
开发语言·c++·算法·transform算法
hn小菜鸡8 小时前
LeetCode 377.组合总和IV
数据结构·算法·leetcode
Deepoch8 小时前
Deepoc 大模型:无人机行业的智能变革引擎
人工智能·科技·算法·ai·动态规划·无人机
heimeiyingwang9 天前
【深度学习加速探秘】Winograd 卷积算法:让计算效率 “飞” 起来
人工智能·深度学习·算法
时空自由民.9 天前
C++ 不同线程之间传值
开发语言·c++·算法