你是一名行政助理,手里有两位客户的空闲时间表:slots1 和 slots2,以及会议的预计持续时间 duration,请你为他们安排合适的会议时间。

「会议时间」是两位客户都有空参加,并且持续时间能够满足预计时间 duration 的 最早的时间间隔。

如果没有满足要求的会议时间,就请返回一个 空数组。

「空闲时间」的格式是 [start, end],由开始时间 start 和结束时间 end 组成,表示从 start 开始,到 end 结束。

题目保证数据有效:同一个人的空闲时间不会出现交叠的情况,也就是说,对于同一个人的两个空闲时间 [start1, end1] 和 [start2, end2],要么 start1 > end2,要么 start2 > end1。

示例 1:

输入:slots1 = [[10,50],[60,120],[140,210]], slots2 = [[0,15],[60,70]], duration = 8
输出:[60,68]
示例 2:

输入:slots1 = [[10,50],[60,120],[140,210]], slots2 = [[0,15],[60,70]], duration = 12
输出:[]

提示:

1 <= slots1.length, slots2.length <= 10^4
slots1[i].length, slots2[i].length == 2
slots1[i][0] < slots1[i][1]
slots2[i][0] < slots2[i][1]
0 <= slots1[i][j], slots2[i][j] <= 10^9
1 <= duration <= 10^6

题解:

class Solution:def minAvailableDuration(self, slots1: List[List[int]], slots2: List[List[int]], duration: int) -> List[int]:slots1.sort()slots2.sort()def f(a, b, c, d):if a <= b <= c <= d and b + duration <= c:ans.extend([b, b + duration])ans, i, j, n1, n2 = [], 0, 0, len(slots1), len(slots2)while i < n1 and j < n2 and not ans:(a, b), (c, d) = slots1[i], slots2[j]f(a, c, b, d)f(a, c, d, b)f(c, a, d, b)f(c, a, b, d)if b < d:i += 1else:j += 1return ans[: 2]

5089. 安排会议日程相关推荐

  1. 第 11 场双周赛-5089. 安排会议日程(双指针)

    你是一名行政助理,手里有两位客户的空闲时间表:slots1 和 slots2,以及会议的预计持续时间 duration,请你为他们安排合适的会议时间. 「会议时间」是两位客户都有空参加,并且持续时间能 ...

  2. Leetcode 1229. 安排会议日程

    1229. 安排会议日程 解题思路 又是看着测试用例做的答案,效率不太高. 题目中给的基本测试用例都是排序好的,在后面的测试用例中,又有些没有排序好的.看到了这样子的测试用例,又得退回去做了一个排序. ...

  3. LeetCode 1229. 安排会议日程(双指针)

    文章目录 1. 题目 2. 解题 1. 题目 你是一名行政助理,手里有两位客户的空闲时间表:slots1 和 slots2,以及会议的预计持续时间 duration,请你为他们安排合适的会议时间. 「 ...

  4. leetcode1229. 安排会议日程

    题目 你是一名行政助理,手里有两位客户的空闲时间表:slots1 和 slots2,以及会议的预计持续时间 duration,请你为他们安排合适的会议时间. 「会议时间」是两位客户都有空参加,并且持续 ...

  5. 双指针—安排会议日程(leetcode 1229)

    题目描述 你是一名行政助理,手里有两位客户的空闲时间表:slots1 和 slots2,以及会议的预计持续时间 duration,请你为他们安排合适的会议时间. 「会议时间」是两位客户都有空参加,并且 ...

  6. Leetcode 1229:安排会议日程(超详细的解法!!!)

    你是一名行政助理,手里有两位客户的空闲时间表:slots1 和 slots2,以及会议的预计持续时间 duration,请你为他们安排合适的会议时间. 「会议时间」是两位客户都有空参加,并且持续时间能 ...

  7. LeetCode-Python-1229. 安排会议日程(区间+数组)

    你是一名行政助理,手里有两位客户的空闲时间表:slots1 和 slots2,以及会议的预计持续时间 duration,请你为他们安排合适的会议时间. 「会议时间」是两位客户都有空参加,并且持续时间能 ...

  8. 【LeetCode - 1229】安排会议日程

    文章目录 1.题目描述 2.解题思路 3.解题代码 1.题目描述 2.解题思路   题目保证了同一个人的空闲时间不会出现交叠的情况,于是先把两个人的空闲时间表按照开始时间从小到大排序.   排序后的时 ...

  9. 利用ASP.NET日期控件制作“会议日程安排”(贴首页过把瘾)

    本文转载自: https://www.cnblogs.com/peaceli/archive/2012/08/06/1359862.html 作者:peaceli 转载请注明该声明. 大家应该比较熟悉 ...

最新文章

  1. mysql卸载后root还在_CentoOs7 Mysql卸载后重新安装缺少/root/.mysql_secret
  2. java 实现输出姓和名
  3. HTML <dfn> 标签的简单介绍
  4. Django和Ajax
  5. linux 修改ldap密码,Linux-ldap密码修改程序,如何加密ssha
  6. Web ,Servlet,jsp技术
  7. 微软即将发布的.NET 5,蕴藏哪些最新特性?
  8. python文件内容写入的方法有哪些、对应的方法和含义_Python的文件读写及目录操作...
  9. unidac连接ORACLE免装客户端驱动
  10. 牛腩学ASP.NET CORE做博客(视频)
  11. linux 串口 抓包工具下载,Device Monitoring Studio串口抓包工具使用教程
  12. 论坛之家-免费论坛申请-3分钟建立自己的个性化论坛
  13. 微信小程序使用组件实现移动端软键盘
  14. python在excel中插入折线图_Python-使用XlsxWriter模块在Excel工作表中绘制折线图
  15. 软件文档的类型有哪些?
  16. 机器学习-决策树之分类树python实战(以红酒数据集为例)(二)
  17. ORACLE数据库报错ORA-00910: specified length too long for its datatype
  18. 动态背景下的运动目标检测
  19. 教你发布Silverlight Bussiness Application(SQL Server 登录,局域网访问,以及使用ArcGIS Server服务需要注意的问题)...
  20. Franklin-Reiter相关消息攻击

热门文章

  1. 个人永久性免费-Excel催化剂功能第95波-地图数据挖宝之IP地址转地理地址及不同经纬度版本转换...
  2. 1、Visual Studio 2017安装
  3. excel中VBA获取指定单元格内容
  4. 从零开始搭建自己的网站二十一:网站IP/PV统计功能设计
  5. Web前端工程师怎么样呢?薪资待遇如何呢?
  6. 找到一个在线网站截图的网站
  7. ResNet 残差网络、残差块
  8. Android 的 LiveReload — jimu Mirror
  9. 【资源】重磅!清华大学网上课程面向全国免费开放!无需登录、注册!在家上清华!...
  10. 如何区分电容的正负极