0
点赞
收藏
分享

微信扫一扫

LeetCode题解(1272):删除区间(Python)


题目:​​原题链接​​(中等)

标签:扫描线算法、数学

解法

时间复杂度

空间复杂度

执行用时

Ans 1 (Python)

76ms (31.25%)

Ans 2 (Python)

Ans 3 (Python)

解法一:

class Solution:
def removeInterval(self, intervals: List[List[int]], toBeRemoved: List[int]) -> List[List[int]]:
ans = []
for s, e in intervals:
if e <= toBeRemoved[0]:
ans.append([s, e])
elif s < toBeRemoved[0] <= e <= toBeRemoved[1]:
ans.append([s, toBeRemoved[0]])
elif toBeRemoved[0] <= s <= e <= toBeRemoved[1]:
pass
elif toBeRemoved[0] <= s <= toBeRemoved[1] < e:
ans.append([toBeRemoved[1], e])
elif toBeRemoved[1] <= s:
ans.append([s, e])
elif s < toBeRemoved[0] <= toBeRemoved[1] < e:
ans.append([s, toBeRemoved[0]])
ans.append([toBeRemoved[1], e])
return


举报

相关推荐

区间合并题解

0 条评论