矩陣快速冪 模板

2021-07-04 23:02:56 字數 797 閱讀 6056

問題:求解乙個n*n矩陣的 m次冪。

核心:構造矩陣。

思想:利用二進位制優化時間複雜度。

應用:優化遞迴公式!!!

舉例:求解第n個斐波那契數。

**實現:

#include #include #include #define maxn 100

#define ll long long

#define mod 10000

using namespace std;

struct matrix

;matrix ori, res;//初始矩陣 和 結果矩陣

void init(int n)//初始化矩陣

}matrix multi(matrix x, matrix y)

}return z;

}void matrix_mod(int n, int m)

//得到最後的矩陣

for(int i = 1; i <= n; i++)

}int main()

return 0;

}

輸入:

2 9

1 11 0

2 81 1

1 0

輸出:

55 34

34 21

34 21

21 13

矩陣快速冪模板

剛學了矩陣快速冪,花了點時間把之前的 修改一下寫成了矩陣類,就當做模板了.話不多說下面貼 首先是標頭檔案和巨集定義什麼的 include include include using namespace std define inf 1000000000 define maxm 20 define m...

矩陣快速冪模板

矩陣快速冪 o log n nyoj301 580ms 時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 給你乙個遞推公式 f x a f x 2 b f x 1 c 並給你f 1 f 2 的值,請求出f n 的值,由於f n 的值可能過大,求出f n 對1000007取模後的...

矩陣快速冪模板

struct mat mat operator const mat c return res 上面是我的基本矩陣快速冪模板,其實矩陣快速冪難的不是你怎麼寫,難的是你矩陣怎麼構造。矩陣的構造,就是找遞推關係。要把需要用到的遞推關係包含操作矩陣上去。找到合適的初始向量和合適的操作矩陣,你基本就可以完成題...