判断两个事件是否存在冲突【LC2446】
给你两个字符串数组
event1
和event2
,表示发生在同一天的两个闭区间时间段事件,其中:
event1 = [startTime1, endTime1]
且event2 = [startTime2, endTime2]
事件的时间为有效的 24 小时制且按
HH:MM
格式给出。当两个事件存在某个非空的交集时(即,某些时刻是两个事件都包含的),则认为出现 冲突 。
如果两个事件之间存在冲突,返回
true
;否则,返回false
。
今天还是阳 还不能出去 哎…
- 思路
将时间转化为分钟形式,然后判断是否有交叉,如果有返回true,如果没有返回false - 实现
class Solution { public boolean haveConflict(String[] event1, String[] event2) { int start1 = convert(event1[0]), end1 = convert(event1[1]); int start2 = convert(event2[0]), end2 = convert(event2[1]); return !(end1 < start2 || end2 < start1); } public int convert(String time){ int h = Integer.valueOf(time.substring(0,2)); int m = Integer.valueOf(time.substring(3,5)); return h * 60 + m; } }