import heapq
class Solution:
def minmumNumberOfHost(self, n: int, startEnd: List[List[int]]) -> int:
# 根据活动的开始时间对活动进行排序
startEnd.sort(key=lambda x: x[0])
# 初始化一个最小堆来存储当前正在进行的活动的结束时间
heap = []
# 初始化主持人数量
hosts = 1
for start, end in startEnd:
# 如果堆不为空且堆顶的活动与新活动冲突
if heap and heap[0] > start:
# 需要一个新的主持人
hosts += 1
elif heap:
heapq.heappop(heap)
# 将新活动的结束时间推入堆中
heapq.heappush(heap, end)
return hosts

京公网安备 11010502036488号