ツバサの備忘録

主に備忘録代わりに精進記録を載せていくつもりです。

ABC079 D - Wall

問題
提出コード

解法

1つのマス目が、他のマス目に影響を及ぼすことも、影響されることもないので、それぞれのマスについて、-1でない場合に1へと変化させる魔力の最小値を求めればよいです。
ということで、マス目の現在の数字(0~9)を頂点、c_{i,j}iからjへ向かうグラフの辺の重みと考えると、現在のマス目の数iから、1への最短経路を求めればいいことになります。
頂点の個数は10個なので、ワーシャルフロイド法を適用して計算することができます。
あとは、前計算でiから1に変化させる魔力の最小値をワーシャルフロイド法で計算しておいて、全ての-1でないマスについて、iから1にする必要な魔力の合計値を求めれば、答えとなります。