Schedule tasks with cooldowns
Tasks of several types run one per time unit, and two tasks of the same type must be separated by a cooldown. Arrange the tasks so the rule holds and the total time (idle slots included) is as short as possible.
Another report added priorities: when several jobs are allowed to run, the higher-priority one goes first.
No answer yet. Write the first one; the best answer gets endorsed.
