高速電力行列はO(N)O(ログn)に線形再帰最適化することができる、非常に良好な最適化です
なかった多くの質問が、良い感じ、私は多くのことを学びました。
しかし、やってP2151は[SDOI2009] HH散歩に行く 人がアップ自閉症です。自閉症は、朝+昼た後、午後は最終的に理解したいです。
ACの後、急速行列パワーを記録物についてブログを書きます。
- 手書きのマトリックス構造、パッケージの種々の機能。
1つの 構造体マール{ 2 INT [MAXM] [MAXM]、N。 3 マル(INT _n = 0){N = _n;のmemset(0、はsizeof A);} //不传参数默认为0 4 マール演算子〜(){ ため(int型 iは= 0 ; iがn <。 I ++)[i]は[I] = 1 ;} //单位矩阵 5 マール演算子 *(CONSTマール&B)のconst { 6 マールC(N) 図7は、 のために(int型 i = 0 ; iがn <; iは++)のために(int型 J = 0 ; J <N; J ++)のための(INT K = 0、K <nであり、k ++ ) 8 CA [I] [J] =(CA [I] [J] + [I] [K] %MOD * BA [K] [J]%のMOD)%MOD。 9 戻りC。 10 } 11 マール演算子 ^(int型B){//快速幂 12 マールC(N)、X = * この ;〜C; // "*この"有意思 13 ながら(B){ 14 であれば(B&1)C = C * X。 15 X = X * X。 16 B >> = 1 。 17 } 18 リターンC。 19 } 20 }。
- マールANS(15)の開口部N行列の長さと幅を示し、マルANS()マトリクスの開口部0のための長さと幅です。
- 行列の乗算は、左と右の乗算乗算を区別するために、可換ではありません。
- P2151 [SDOI2009] HHは歩いて 少し異なる点の間の関係が記憶されている二回一方向側縁なし、ユニコムユニコム側の関係に置き換えています。私は最終的に乗算原理の瞬間を発見した: 図は、*のB = Cを表し、
これは3つのビューの気持ちのように見えます。カラーラインの長さが同じで表し、青い線は、条件を乗算することができます。
i行目のCは、j番目の列は、Aのうちi番目の行の値に等しい、j列うちのBは、(すなわち、青線等である)を順次乗算まとめます。
これ以上。。