In [8]:
def condense_meeting_times(tuples):
tuples.sort()
condensed = [tuples[0]]
for tup in tuples[1:]:
if tup[0] <= condensed[-1][1]:
condensed[-1] = (condensed[-1][0], max(tup[1], condensed[-1][1]))
else:
condensed.append(tup)
return condensed
In [9]:
condense_meeting_times([(0, 1), (3, 5), (4, 8), (10, 12), (9, 10)])
Out[9]:
In [10]:
condense_meeting_times([(1, 3), (2, 4)])
Out[10]:
In [11]:
condense_meeting_times([(1, 2), (2, 3)])
Out[11]:
In [12]:
condense_meeting_times([(1, 5), (2, 3)])
Out[12]: