Max Chunks To Make Sorted II - Problem
You are given an integer array arr. We split arr into some number of chunks (i.e., partitions), and individually sort each chunk. After concatenating them, the result should equal the sorted array.
Return the largest number of chunks we can make to sort the array.
Input & Output
Example 1 — Basic Case
$
Input:
arr = [5,4,3,2,1]
›
Output:
1
💡 Note:
The array is already in reverse order. No matter how we split it, we need all elements together to form the sorted sequence [1,2,3,4,5]. Only 1 chunk is possible.
Example 2 — Multiple Chunks Possible
$
Input:
arr = [2,1,3,4,4]
›
Output:
4
💡 Note:
We can split as [2,1] | [3] | [4] | [4]. After sorting each chunk: [1,2] + [3] + [4] + [4] = [1,2,3,4,4], which matches the sorted array.
Example 3 — Already Sorted
$
Input:
arr = [1,2,3,4,5]
›
Output:
5
💡 Note:
Array is already sorted, so we can make each element its own chunk: [1] | [2] | [3] | [4] | [5]. Maximum possible chunks.
Constraints
- 1 ≤ arr.length ≤ 2000
- 0 ≤ arr[i] ≤ 108
Visualization
Tap to expand
💡
Explanation
AI Ready
💡 Suggestion
Tab
to accept
Esc
to dismiss
// Output will appear here after running code