Leetcode—2244. 完成所有任务需要的最少轮数【中等】

2024每日刷题(136)

Leetcode---2244. 完成所有任务需要的最少轮数

实现代码

cpp 复制代码
class Solution {
public:
    int minimumRounds(vector<int>& tasks) {
        unordered_map<int, int> map;
        for(int task: tasks) {
            map[task]++;
        }
        int ans = 0;

        // freq = 1 -> it's impossible
        // freq = 2 -> needs 1 round
        // freq = 3 -> needs 1 round
        // freq = 3k                           -> needs k rounds
        // freq = 3k + 1 = 3 * (k - 1) + 2 * 2 -> needs k + 1 rounds
        // freq = 3k + 2 = 3 * k       + 2 * 1 -> needs k + 1 rounds
        for(auto [_, freq]: map) {
            if(freq == 1) {
                return -1;
            } else {
                ans += (freq + 2) / 3;
            }
        }
        return ans;
    }
};

运行结果


之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

相关推荐
前端炒粉12 小时前
35.LRU 缓存
开发语言·javascript·数据结构·算法·缓存·js
断剑zou天涯14 小时前
【算法笔记】窗口内最大值或最小值的更新结构
java·笔记·算法
smj2302_7968265214 小时前
解决leetcode第3753题范围内总波动值II
python·算法·leetcode
骑着猪去兜风.16 小时前
线段树(二)
数据结构·算法
fengfuyao98517 小时前
竞争性自适应重加权算法(CARS)的MATLAB实现
算法
散峰而望17 小时前
C++数组(二)(算法竞赛)
开发语言·c++·算法·github
leoufung17 小时前
LeetCode 92 反转链表 II 全流程详解
算法·leetcode·链表
wyhwust18 小时前
交换排序法&冒泡排序法& 选择排序法&插入排序的算法步骤
数据结构·算法·排序算法
利刃大大18 小时前
【动态规划:背包问题】完全平方数
c++·算法·动态规划·背包问题·完全背包
码途进化论19 小时前
用AI当嘴替、优雅终结技术争论!
经验分享