設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 上面是我的基本矩陣快速冪模板,其實矩陣快速冪難的不是你怎麼寫,難的是你矩陣怎麼構造。矩陣的構造,就是找遞推關係。要把需要用到的遞推關係包含操作矩陣上去。找到合適的初始向量和合適的操作矩陣,你基本就可以完成題...