矩陣快速冪模板

2021-09-10 21:27:34 字數 938 閱讀 5188

設a為m * k的矩陣,b為k * n的矩陣,那麼稱m*n的矩陣c為矩陣a與b的乘積,記作c=ab,其中矩陣c中的第i行第j列元素為a的第i行與b的第j列對應的元素乘積和。

當矩陣a的列數等於矩陣b的行數時,a與b可以相乘

矩陣c的行數等於a的行數,c的列數等於b的列數。

c的第i行第j列的元素等於矩陣a的第i行的元素與矩陣b的第j列對應元素乘積之和。

題目描述

給定n*n的矩陣a,求a^k

輸入輸出格式

輸入格式:

第一行,n,k

第2至n+1行,每行n個數,第i+1行第j個數表示矩陣第i行第j列的元素

輸出格式:

輸出a^k

共n行,每行n個數,第i行第j個數表示矩陣第i行第j列的元素,每個元素模10^9+7

**

#include

#include

#include

#include

#define mod 1000000007

using namespace std;

typedef

long

long ll;

struct matans, res;

ll k, n;

mat mul

(mat x, mat y, ll n)}}

return t;

}void

quick_mod

(ll n, ll n)

}while

(n)}

intmain()

printf

("\n");

}return0;

}

矩陣快速冪模板

剛學了矩陣快速冪,花了點時間把之前的 修改一下寫成了矩陣類,就當做模板了.話不多說下面貼 首先是標頭檔案和巨集定義什麼的 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 上面是我的基本矩陣快速冪模板,其實矩陣快速冪難的不是你怎麼寫,難的是你矩陣怎麼構造。矩陣的構造,就是找遞推關係。要把需要用到的遞推關係包含操作矩陣上去。找到合適的初始向量和合適的操作矩陣,你基本就可以完成題...