当前位置:网站首页>【日常训练】729. 我的日程安排表 I
【日常训练】729. 我的日程安排表 I
2022-07-05 21:03:00 【Puppet__】
题目
实现一个 MyCalendar 类来存放你的日程安排。如果要添加的日程安排不会造成 重复预订 ,则可以存储这个新的日程安排。
当两个日程安排有一些时间上的交叉时(例如两个日程安排都在同一时间内),就会产生 重复预订 。
日程可以用一对整数 start 和 end 表示,这里的时间是半开区间,即 [start, end), 实数 x 的范围为, start <= x < end 。
实现 MyCalendar 类:
MyCalendar() 初始化日历对象。
boolean book(int start, int end) 如果可以将日程安排成功添加到日历中而不会导致重复预订,返回 true 。否则,返回 false 并且不要将该日程安排添加到日历中。
示例:
输入:
[“MyCalendar”, “book”, “book”, “book”]
[[], [10, 20], [15, 25], [20, 30]]
输出:
[null, true, false, true]
解释:
MyCalendar myCalendar = new MyCalendar();
myCalendar.book(10, 20); // return True
myCalendar.book(15, 25); // return False ,这个日程安排不能添加到日历中,因为时间 15 已经被另一个日程安排预订了。
myCalendar.book(20, 30); // return True ,这个日程安排可以添加到日历中,因为第一个日程安排预订的每个时间都小于 20 ,且不包含时间 20 。
提示:
0 <= start < end <= 109
每个测试用例,调用 book 方法的次数最多不超过 1000 次。
代码
package dayLeetCode;
import java.util.ArrayList;
import java.util.List;
public class dayleetcode729 {
List<int[]> booked;
public dayleetcode729() {
booked = new ArrayList<>();
}
public boolean book(int start, int end) {
for (int[] arr : booked){
// 有交集
if (arr[0] < end && start < arr[1]){
return false;
}
}
booked.add(new int[]{
start, end});
return true;
}
}
边栏推荐
- phpstudy小皮的mysql点击启动后迅速闪退,已解决
- AITM 2-0003 水平燃烧试验
- Clion configures Visual Studio (MSVC) and JOM multi-core compilation
- Clear app data and get Icon
- 实现浏览页面时校验用户是否已经完成登录的功能
- vant 源码解析之 utils/index.ts 工具函数
- Research and development efficiency improvement practice of large insurance groups with 10000 + code base and 3000 + R & D personnel
- JS common method encapsulation
- Monorepo management methodology and dependency security
- Determine the best implementation of horizontal and vertical screens
猜你喜欢

ClickHouse 复制粘贴多行sql语句报错

使用WebAssembly在浏览器端操作Excel

Clion-MinGW编译后的exe文件添加ico图标

Abnova fluorescent dye 620-m streptavidin scheme

R语言【数据管理】

显示器要申请BS 476-7 怎么送样?跟显示屏一样吗??

Influence of oscilloscope probe on signal source impedance

中国的软件公司为什么做不出产品?00后抛弃互联网;B站开源的高性能API网关组件|码农周刊VIP会员专属邮件周报 Vol.097

木板ISO 5660-1 热量释放速率摸底测试

Clion configures Visual Studio (MSVC) and JOM multi-core compilation
随机推荐
Écrire une interface basée sur flask
Abbkine trakine F-actin Staining Kit (green fluorescence) scheme
JS common method encapsulation
AITM2-0002 12s或60s垂直燃烧试验
Write an interface based on flask
序列联配Sequence Alignment
产品好不好,谁说了算?Sonar提出分析的性能指标,帮助您轻松判断产品性能及表现
Implementation of redis unique ID generator
示波器探头对测量带宽的影响
Clion configures Visual Studio (MSVC) and JOM multi-core compilation
Aitm2-0002 12s or 60s vertical combustion test
解析五育融合之下的steam教育模式
Matplotlib drawing retouching (how to form high-quality drawings, such as how to set fonts, etc.)
教你自己训练的pytorch模型转caffe(二)
Who the final say whether the product is good or not? Sonar puts forward performance indicators for analysis to help you easily judge product performance and performance
phpstudy小皮的mysql点击启动后迅速闪退,已解决
研学旅游实践教育的开展助力文旅产业发展
大二下个人发展小结
Dictionary tree simple introductory question (actually blue question?)
haas506 2.0开发教程 - 阿里云ota - pac 固件升级(仅支持2.2以上版本)