<p>You want to schedule a list of jobs in <code>d</code> days. Jobs are dependent (i.e To work on the <code>i<sup>th</sup></code> job, you have to finish all the jobs <code>j</code> where <code>0 <= j < i</code>).</p> <p>You have to finish <strong>at least</strong> one task every day. The difficulty of a job schedule is the sum of difficulties of each day of the <code>d</code> days. The difficulty of a day is the maximum difficulty of a job done on that day.</p> <p>You are given an integer array <code>jobDifficulty</code> and an integer <code>d</code>. The difficulty of the <code>i<sup>th</sup></code> job is <code>jobDifficulty[i]</code>.</p> <p>Return <em>the minimum difficulty of a job schedule</em>. If you cannot find a schedule for the jobs return <code>-1</code>.</p> <p> </p> <p><strong>Example 1:</strong></p> <img alt="" src="https://assets.leetcode.com/uploads/2020/01/16/untitled.png" style="width: 365px; height: 370px;" /> <pre> <strong>Input:</strong> jobDifficulty = [6,5,4,3,2,1], d = 2 <strong>Output:</strong> 7 <strong>Explanation:</strong> First day you can finish the first 5 jobs, total difficulty = 6. Second day you can finish the last job, total difficulty = 1. The difficulty of the schedule = 6 + 1 = 7 </pre> <p><strong>Example 2:</strong></p> <pre> <strong>Input:</strong> jobDifficulty = [9,9,9], d = 4 <strong>Output:</strong> -1 <strong>Explanation:</strong> If you finish a job per day you will still have a free day. you cannot find a schedule for the given jobs. </pre> <p><strong>Example 3:</strong></p> <pre> <strong>Input:</strong> jobDifficulty = [1,1,1], d = 3 <strong>Output:</strong> 3 <strong>Explanation:</strong> The schedule is one job per day. total difficulty will be 3. </pre> <p> </p> <p><strong>Constraints:</strong></p> <ul> <li><code>1 <= jobDifficulty.length <= 300</code></li> <li><code>0 <= jobDifficulty[i] <= 1000</code></li> <li><code>1 <= d <= 10</code></li> </ul>