【どうてきぷろぐらみんぐ】
動的プログラミング(DP) とは?
💡 「小さい問題の答えを積み上げて」大きな問題を解く
📌 このページのポイント
具体的にどういうこと?
競技プログラミングで頻出って本当?
超頻出だよ。AtCoderのABC-D〜E問題でDPはほぼ毎回出る。ナップサック問題、区間DP、桁DP、木DP、ビットマスクDP…種類が多くて難しいけど、パターンを覚えれば解ける問題が増える。「この問題はDPで解ける」と気づけるかが最初のハードルだね
実務でDPを使う場面は?
📖 おまけ:英語の意味
「Dynamic Programming」 = 動的計画法
💬 Richard Bellmanが1950年代に命名。「Dynamic」は数学的に響きが良いから選んだだけで深い意味はないよ