Given array where each element is the max jump length from that position, determine if you can reach the last index.
DP: dp[i] = true if index i is reachable. Propagate reachability forward.
- dp[0] = true, rest false
- For each i where dp[i]==true: mark dp[i+1..i+nums[i]] as true
- Return dp[n-1]
- Time Complexity: O(n^2)
- Space Complexity: O(n)