hdu 4965 矩陣快速冪

2021-06-26 11:24:36 字數 559 閱讀 6476

給定兩個矩陣a,b,分別為n*k和k*n;求出矩陣c = a*b,矩陣m=c^(n∗n)

將矩陣m中的所有元素取模6,得到新矩陣m『,並計算矩陣m』中所有元素的和

注意到ba 得到 6*6,而ab 得到1000*1000

轉化乘法算式為:m = abababab.. = a(ba)^(n*n-1)b

直接用矩陣快速冪即可

#include#include#include#define rd(x) scanf("%d",&x)

#define rd2(x,y) scanf("%d%d",&x,&y)

#define clr0(x) memset(x,0,sizeof(x))

using namespace std;

typedef long long ll;

#define n 7

int n, k;

int m;

struct matrix

return t;

}int main()

return 0;

}

hdu4965 巧用矩陣乘法結合律

題意 給兩個矩陣,n m的矩陣a,和m n的矩陣b,求 a b n n 其中 m 6,n 1000。思路 一開始直接模擬,寫了個矩陣快速冪,超時了,因為a b後得到的是1000 1000的矩陣,做乘法直接超時了,後來寫了個這樣的 a b n n a b a b a b a b a b a b a b...

hdu4965 巧用矩陣乘法結合律

題意 給兩個矩陣,n m的矩陣a,和m n的矩陣b,求 a b n n 其中 m 6,n 1000。思路 一開始直接模擬,寫了個矩陣快速冪,超時了,因為a b後得到的是1000 1000的矩陣,做乘法直接超時了,後來寫了個這樣的 a b n n a b a b a b a b a b a b a b...

快速矩陣冪HDU2276

題意 有n盞燈,編號為1到n。0表示不亮,1表示亮,如果 i th的燈的左邊燈是亮的,那麼下一秒鐘,i th燈的狀態要改變,0變成1,1變成0。第1個燈的 左邊是第n個燈 輸入t,輸入開始的狀態 問你在第t秒時,燈的狀態時什麼樣的,輸出來。分析 可推出下一秒的狀態a i a i 1 n n a i ...