Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def getMinGates(landingTimes, takeOffTimes, maxWaitTime, initialPlanes):
- intervals = []
- for x in range(0,len(landingTimes)):
- intervals.append([takeOffTimes[x], landingTimes[x]])
- return meetingRooms2(intervals)
- def meetingRooms2(intervals=[[0,0]]):
- if (intervals == None or len(intervals) == 0):
- return 0
- # start 0, end 1
- intervals.sort(key=lambda list: list[0])
- minHeap = []
- h.heappush(minHeap, (intervals[0][1]))
- for i in range(1, len(intervals)):
- curr = intervals[i]
- earliest_end = h.heappop(minHeap)
- if (curr[0] >= earliest_end):
- earliest_end = curr[1]
- else:
- h.heappush(minHeap, curr[1])
- h.heappush(minHeap, earliest_end)
- return len(minHeap)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement