Search⌘ K
AI Features

Solution: Task Scheduler

Discover how to efficiently schedule CPU tasks with cooling periods by understanding task frequency patterns and calculating idle intervals. This lesson guides you through implementing an algorithm that ensures minimum execution time for repeated tasks while respecting required cooling intervals.

Statement

You are given an array of CPU tasks represented by uppercase letters (A to Z) and an integer n, which denotes the cooling period required between any two identical tasks. Each task takes exactly one CPU interval to execute. Therefore, each CPU interval can either perform a task or remain idle. Tasks can be executed in any order, but the same task must be separated by at least n intervals.

Determine the minimum number of CPU intervals required to complete all tasks.

Constraints:

  • 1 1 \leq ...