給定兩個矩陣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 ...