インタビューフォーラムで出会った質問は次のとおりです。
0と1で満たされた配列があります。0は溶岩の燃焼を表し、1は飛び石を表します。配列の最初から始めて、最後に到達するための最速の方法を見つけたいと考えています。各タイムステップで、速度Vを1ずつ増減するか、Vステップ離れた飛び石にジャンプすることができます。オーバーシュートせずに配列の最後に到達したい。
これを解決するための良いアルゴリズムは何ですか?
私はいくつかのことを試しましたが(主に動的計画法と再帰を使用して)、非指数関数的アルゴリズムにつながる最適な部分構造を見つけることができませんでした。何か案は?