[LeetCode]621. Task Scheduler
621. Task Scheduler
总时间 = (3+1) * (A的个数-1) + 最后一个A所耗费的时间class Solution(object):
def leastInterval(self, tasks, N):
"""
:type tasks: List[str]
:type n: int
:rtype: int
"""
# 计算每个任务的个数
task_counts = collections.Counter(tasks).values()
# 计算最大任务个数
M = max(task_counts)
# 获取有几个任务能够被安排到最后
Mct = task_counts.count(M)
# 计算最大的时间
return max(len(tasks), (M - 1) * (N + 1) + Mct)
关注公众号:数据结构与算法那些事儿,每天一篇数据结构与算法

浙公网安备 33010602011771号