题解 | #主持人调度(二)#

主持人调度(二)

https://www.nowcoder.com/practice/4edf6e6d01554870a12f218c94e8a299

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

全部评论

相关推荐

牛客737698141号:他们可以看到在线简历的。。。估计不合适直接就拒了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务