Mental Model
We want to do as many jobs as possible before their deadlines to get the highest total profit. We pick jobs that finish on time and give the most money.
Analogy: Imagine you have a list of tasks to do before certain times, and each task pays differently. You want to pick tasks that fit in your schedule and pay the most, like choosing appointments that don't overlap and pay well.
Jobs: [Job1(profit=20, deadline=2)] -> [Job2(profit=15, deadline=2)] -> [Job3(profit=10, deadline=1)] -> null Schedule slots: [1] [2] [3] ... (each slot can hold one job before its deadline)
