Same with Jump Game I. Just need a step parameter and assume there is no "0" value in the array.
1 class Solution { 2 public: 3 int jump(int A[], int n) { 4 if (n < 2) return 0; 5 int current = 0, i = 0, steps = 0; 6 while (i < n) { 7 current = i + A[i]; 8 steps++; 9 if (current >= n-1) return steps; 10 for (int j = i+1, tmp = 0; j <= current; j++) { 11 if (j + A[j] > tmp) { 12 tmp = j + A[j]; 13 i = j; 14 } 15 } 16 } 17 } 18 };
时间: 2024-10-12 23:56:37