自力で発明したのでメモ。たぶん既知のアルゴリズムと同じ?
ref: ABC323G
これの行列式を求めたい。ところでこれを
というような、下三角+余分に斜め1列の形にできれば、行列式の定義通りにN!項の和をとるやつを
dp[x][y]=x行目までの選び方を決めて、選んでない列がy列目(1≦y≦x+1)であるときの、行列式への寄与
でDPできる。これは状態数O(N^2)、遷移数各O(1)、遷移の計算がO(N)(高々N次の多項式同士の加減と、高々N次と1次の多項式の積の計算が定数回)なので全体でO(N^3)
下三角っぽく変形するのは簡単で、まず2列目を使って3列目以降を掃き出す
そうすると2行目の3列目以降にxが増殖するので、これを3行目以降を使って相殺する
すると1行目が掃き出せたのであとは同様にやる
気持ちとしてはこれと同じ。
ABC220Ex O(N^3)解法 - メモ
おわりです