public static void Main()
Program p= new Program();
p.myArray = new int[]{1, 2, 0};
p.CanReachTheLast(p.myArray);
public bool CanReachTheLast(int[] array)
EffectiveJumpsNumber(array[0],array,0);
public int EffectiveJumpsNumber(int maxJumpsNumber,int[] array, int pos)
int tempJumpsNumber = maxJumpsNumber;
if ((pos+tempJumpsNumber) <= array.Length)
int nextPos = array[pos+tempJumpsNumber];
EffectiveJumpsNumber(nextPos, array, pos+tempJumpsNumber);