/** * 动态规划 */ public class FrogJump { /** * * @param arr * @return */ public static boolean frogJump(int[] arr){ int length = arr.length; boolean[] b = new boolean[length]; //初始状态 b[0] = true; for (int i = 1; i < length; i++) { b[i] = false; for (int j = 0; j < i; j++) { if (j + arr[j] >= i && b[j]) { b[i] = true; break; } } } return b[length - 1]; } public static void main(String[] args) { int[] arr = new int[]{2,1,0,1,3}; System.err.println(frogJump(arr)); } }