Skip to main content

56. Merge Intervals

link

from sortedcontainers import SortedDict
class Solution:
def merge(self, intervals: List[List[int]]) -> List[List[int]]:

maps = SortedDict()

for v1, v2 in intervals:

maps[v1] = maps.get(v1, 0) + 1
maps[v2] = maps.get(v2, 0) - 1



res = []
current = 0
pair = []

for key, value in maps.items():
if current == 0 and not pair:
pair.append(key)
current += value
if current == 0 and pair:
pair.append(key)
res.append(pair)
pair = []


return res