首页 > 其他分享 >会议室

会议室

时间:2023-05-17 15:26:51浏览次数:26  
标签:10 nums res 会议室 intervals let

#富途一面算法题#

ps:leetcode需要开通会员,才能刷这道题目。

一、题目描述

  给一个会议时间安排的数组intervals,每个会议室包含开始时间和结束时间,即intervals[i] = [starti, endi],为避免会议冲突,同时要考虑充分利用会议室资源,至少需要多少间会议室,才能满足这里会议安排。

二、示例

用例1

输入:intervals = [[0,30], [5, 10], [15,20]]

输出:2

用例2

输入:intervals = [[7,10], [2,4]]

输出:1

三、解题思路

  这道题可以转化为上下公交车问题一样,每个人上车的时间不同,即开始时间,在下车的时间也不同,即结束时间,求得在车上最多人数。

  这道题可以用暴力算法,但面试官眉头一皱。所以这道题目需要用最优解法,即贪心算法。可以转化为坐标形式,通过垂直于x轴从左向右移动,移动过程中,记录这根线与区间的最大交点个数,即相交的最大区间个数。

四、代码实现

 1  1 var minMeeting = function(intervals) {
 2  2   const nums = [];
 3  3   // 存放数据,上车+1,下车-1
 4  4   for(let [up, down] of intervals) {
 5  5     nums.push([up, 1]);
 6  6     nums.push([down, -1]);
 7  7   }
 8  8   // 排序:首先按时间,时间相同的,先下车,后上车
 9  9   nums.sort((a, b) => a[0] === b[0] ? a[1] - b[1] : a[0] - b[0]);
10 10   // 遍历数组,找到最大的相交点
11 11   let res = 0;
12 12   let curValue = 0
13 13   for(let [value, flag] of nums) {
14 14     curValue += flag;
15 15     res = Math.max(res, curValue);
16 16   }
17 17   return res;
18 18 } 

标签:10,nums,res,会议室,intervals,let
From: https://www.cnblogs.com/daheiylx/p/17408831.html

相关文章

  • 【230427-2】将20把相同的椅子分别放入编号为1,2,3,4的四个会议室内,要求每个会议室中放入
    【思路对但败在细节的解法】先将1张椅子放入1号房间,2张椅子放入2号房间,3张椅子放入3号房间,4张椅子放入4号房间,这以后再放椅子就不存在违背题设的情况了。剩下十张椅子分四份,相当于3个隔板去插十张椅子中的9个空,那么方案是C93=9*8*7/3/2/1=98.【错误所在】以上做法,问题在每个房间的......
  • 【扫描线】LeetCode 253. 会议室 II
    题目链接253.会议室II思路这道题非常类似于坐公交车上下车。样例中intervals=[[0,30],[5,10],[15,20]]可以这么拆解上车:[0,+1],[5,+1],[15,+1]下车:[10,-......
  • 使用SpringBoot简单实现WebRTC群聊会议室(Mesh方案)
    近期需要做一个类似会议室功能,但网络上大多数是一对一通信,故记录分享希望帮助到有用的人WebRTC一对一聊天原理关于WebRTC建立一对一聊天的模板网上很多,可参考以下博客:spr......
  • Python django 会议室管理系统
    Pythondjango会议室管理系统django会议室申请系统django会议室系统技术:Pythondjango数据库:MySQL涉及功能:登录、注册、登出、管理员登录、管理用户信息等添加会......
  • 253. 会议室 II(会员题目)
    题目给你输入若干形如[begin,end]的区间,代表若干会议的开始时间和结束时间,请你计算至少需要申请多少间会议室。函数签名如下://返回需要申请的会议室数量intminMeeting......
  • FreeSWITCH在会议室中持续播放音频文件
    最近遇到一个客户需求,希望在会议室建立起来后,自动播放一段指定的声音。已知会议室命令,假设建立起一个会议室号码3000,很容易实现以下功能:一、播放一个声音文件一次confer......
  • 华为云会议SmartRooms智能会议室,企业高效开会神器​
    数字浪潮汹涌而至,智能协同为云已成为时代主题,作为企业协同办公的关键工具,云会议不仅能大幅提升企业内部的办公效率,更是连接着外部客户和伙伴无缝衔接、互联互通。今天,我们就......
  • 使用fullcalendar构建简单会议室预约页面
    <linkhref="./plugins/fullcalendar-5.11.2/fullcalendar-scheduler/main.min.css"rel="stylesheet"/><scripttype="text/javascript"language="javascript"src=".......
  • 简单快捷又实用,SmartRooms智能会议室全都能满足​
    简单快捷又实用,SmartRooms智能会议室全都能满足​近年来,混合办公日益成为职场人的常态,企业也纷纷上马各类视频会议硬件终端,然而线上线下、内外部会议割裂,各品牌软硬件孤岛的......
  • 253.会议室II
    给你一个会议时间安排的数组 intervals ,每个会议时间都会包括开始和结束的时间 intervals[i]=[starti,endi] ,返回 所需会议室的最小数量 。 示例1:输入:interva......