問題はこちら
問題概要
の正方形のチョコからなる長方形の板チョコがあり, その板チョコを縦横に割っていく. 割るときにかかるコストは割る長さの2乗であり, ちょうどこの正方形のチョコに分割したい. そのように分割するときの最小コストを求めよ.
上のような質問が個与えられる.
思考の流れ
制約が小さいが質問が多いので各質問に対して高速に答えるか, 前計算でいっきに求めたい. チョコを割るとサイズの小さな別の問題になるので前計算ですべて求めることができそう.
DPでやる. を「の板チョコを個の正方形に分割するときの最小コスト」とすると更新式は以下のようになる.
(縦分割)
(横分割)
は上のどちらか小さい方.
計算量はもう少し削減できそうだがこれでも十分間に合う.
提出プログラム
https://codeforces.com/contest/598/submission/77573371
感想
こういうの秒殺できるようになりたい.