review dynamic program problem Decode ways