public class JumpArray {
public static boolean canReachLastIndex(int[] arr) {
int size = arr.length;
int currentIndex = 0;
while (currentIndex < size) {
// If we reach the last index, return true
if (currentIndex == size - 1) {
return true;
}
// If jump goes out of bounds, stop
if (currentIndex + arr[currentIndex] >= size) {
return false;
}
// Move to the next index by jumping
currentIndex += arr[currentIndex];
}
return false;
}
public static void main(String[] args) {
int[] arr = {2, 3, 1, 1, 4};
if (canReachLastIndex(arr)) {
System.out.println("Yes, we can reach the last index.");
} else {
System.out.println("No, we cannot reach the last index.");
}
}
}
/*
run:
Yes, we can reach the last index.
*/