leetcode-主持人调度(二)-110

题目要求

思路

1.先将开始时间和结束时间拆分放到两个数组中进行排序

2.如果开始的时间小于结束时间,说明目前没有空闲的人,需要增加人,如果大于等于,说明有人刚结束了主持,可以进行新的主持了,变更到下一个任务的结束的时间去安排人。
代码实现

cpp 复制代码
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 计算成功举办活动需要多少名主持人
     * @param n int整型 有n个活动
     * @param startEnd int整型vector<vector<>> startEnd[i][0]用于表示第i个活动的开始时间,startEnd[i][1]表示第i个活动的结束时间
     * @return int整型
     */
    int minmumNumberOfHost(int n, vector<vector<int> >& startEnd) {
        vector<int> start;
        vector<int> end;
        for(int i = 0; i < n; i++)
        {
            start.push_back(startEnd[i][0]);
            end.push_back(startEnd[i][1]);
        }

        sort(start.begin(), start.end());
        sort(end.begin(), end.end());
        int res = 0;
        int j = 0;
        for(int i = 0; i < n; i++)
        {
            if(start[i] >= end[j])
                j++;
            else
                res++;
        }
        return res;
    }
};
相关推荐
王中阳Go2 小时前
从超市收银到航空调度:贪心算法如何破解生活中的最优决策谜题?
java·后端·算法
故事挺秃然3 小时前
中文分词:机械分词算法详解与实践总结
算法·nlp
车队老哥记录生活5 小时前
【MPC】模型预测控制笔记 (3):无约束输出反馈MPC
笔记·算法
地平线开发者6 小时前
BEV 感知算法评价指标简介
算法·自动驾驶
不过四级不改名6776 小时前
用c语言实现简易c语言扫雷游戏
c语言·算法·游戏
C++ 老炮儿的技术栈7 小时前
手动实现strcpy
c语言·开发语言·c++·算法·visual studio
倔强的石头_8 小时前
【数据结构与算法】利用堆结构高效解决TopK问题
后端·算法
倔强的石头_8 小时前
【数据结构与算法】详解二叉树下:实践篇————通过链式结构深入理解并实现二叉树
后端·算法
哎写bug的程序员8 小时前
leetcode复盘(1)
算法·leetcode·职场和发展
风靡晚9 小时前
用于汽车毫米波雷达的四维高分辨率点云图像
人工智能·算法·机器学习·计算机视觉·汽车·信息与通信·信号处理