この記事で使うアルゴリズム
動的計画法
はじめに
カテゴリー競プロ初中級者100問では、Qiita
にて@e869120
さんがレッドコーダーが教える、競プロ・AtCoder上達のガイドライン【中級編:目指せ水色コーダー!】としてまとめられている100問をPython
で解いています。
全問題の一覧はこちらです
問題
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ALDS1_10_B&lang=ja
この問題は動的計画法を用いて解くことができます。
方針
dp[i][j]
を考えます。このリストは行列積M_i, M_i+1,..., M_j
を計算するコストを表します。
コード
1 | INF = 10**10 |
具体的な計算例
行列積M_2 M_3 M_4 M_5
をM_2 M_3
とM_4 M_5
の行列積として求める際の具体的な計算は以下のようになります。
1 | R: R2 R3 R4 R5 R6 |
記事情報
- 投稿日:2020年5月15日
- 最終更新日:2020年5月15日