title: Interview puzzle: Jump Game
body: <p>Jump Game:
  Given an array, start from the first element and reach the last by jumping. The jump length can be at most the value at the current position in the array. The optimum result is when you reach the goal in minimum number of jumps.</p>
  <p>What is an algorithm for finding the optimum result?</p>
  <p>An example: given array <code>A = {2,3,1,1,4}</code> the possible ways to reach the end (index list) are</p>
  <ol>
  <li><code>0,2,3,4</code> (jump 2 to index 2, then jump 1 to index 3 then 1 to index 4)</li>
  <li><code>0,1,4</code> (jump 1 to index 1, then jump 3 to index 4)</li>
  </ol>
  <p>Since second solution has only 2 jumps it is the optimum result.</p>