私の友人が実際に私に非常に興味深いコンピューターサイエンス関連の質問をしてきました。
問題は、旅行する必要があることです。 キロ。唯一のガソリンスタンドは出発点にあります。燃料タンクの最大容量は kmの走行に十分であり、途中で燃料を「埋め」、後で使用するために保存することができます。
たとえば、最初に km 走行し、そこに km相当の燃料を埋め込んでから、給油に戻ると、次に、残った kmの燃料を取り出して、それを使ってさらに到達することができます。
あなたは目的地に到達するための最も効率的な方法を見つける必要があります。
私が考えたのは動的プログラミングの使用ですが、給油を行う前に移動する距離はキロメートル単位の整数であると想定する必要があります。そうでなければ、DPでそれを行うのは難しいので、まだ線形プログラミングを試していません、それは可能だと思います。
それを行う方法について何か考えがありますか?または何かヒントはありますか?
最も重要なのは、どのタイプのcs問題ですか?NPは難しいですか?機械で解けるのか、それとも数学的な問題なのか?
さらにいくつかの考え:
- それは継続的なパスなので、NPかどうかを尋ねるのは少しばかげているかもしれませんが、私はまだ非常に興味があります。
- 複雑な計算を回避するために、とが意図的に選択される場合があります。
- 貪欲な解決策はありますか?まだ考えられません。
- 私の友人はそれがcs問題であると主張しているのですが、今は数学的なパターンを見つける問題のほうが多いと思うので、この投稿を続けることにします。
そして、これに関連する科学記事や教科書があれば教えてください、そもそもどこから始めればよいのかわかりません。