題目傳送門
題目大意:
給乙個n*n的矩陣,求它的 k 次方的矩陣。
解題思路:
1、快速冪作為函式使用;
2、矩陣乘法也用函式表達(本題最想說的部分)
上**:
#include#define ll long long
const int p=1e9+7;
int n;
struct noda,c;
//a矩陣是輸入,c矩陣是答案
ll m;
nod mul(nod x,nod y)
} }return z;
}void sqr(ll x)
}int main()
c.a[i][i]=1;//初始化 c陣列
} sqr(m);//矩陣跑快速冪 m次方運算
for(int i=1;i<=n;i++)
printf("\n");
} }
luogu 3390 模板 矩陣快速冪
矩陣快速冪 給定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 輸入樣例 1 2 1 1 11 1 輸出樣例 1 ...
P3390 矩陣快速冪
這個題根據題目也就能知道應該怎麼做,但是 怎麼實現矩陣乘法,是乙個問題,所以就用到了過載運算子。過載運算子可以定義一些普通的運算,比如 有很多,但不能自己創造符號。在這個題中,需要定義矩陣乘法,在定義之前,還要定義乙個結構體 1 struct hls 4hls t,r 5long longk 6 i...
P3390矩陣快速冪
矩陣快速冪 給定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 輸入樣例 1 2 1 1 11 1 輸出樣例 1 ...