給定 n×n 的矩陣 a ,求ak
第一行兩個整數 n,k 接下來 n 行,每行 n 個整數,第 i 行的第 j 的數表示 a i,j
輸出ak
共 n 行,每行 n 個數,第 i 行第 j 個數表示 ak i,j ,每個元素對109+7取模。
輸入 #1
211
1111
23
輸出 #1
111
112
矩陣乘法和矩陣快速冪的模板題
關鍵就是重新定義 「∗
*∗」 。
讓乘號定義成矩陣乘法。
然後直接呼叫就行了。
#include
#include
#include
using
namespace std;
typedef
long
long ll;
ll n,k;
const
int mod=
1000000007
;struct matrix
a,b;
matrix operator
*(matrix a,matrix b)
}for
(int k=
1;k<=n;k++)}
}return c;
}void
ksm(ll x)
ksm(x/2)
; b=b*b;
if(x&
1) b=b*a;
}int
main()
}ksm
(k);
for(
int i=
1;i<=n;i++
) cout<}return0;
}
洛谷 P3390 模板 矩陣快速冪
時空限制1000ms 128mb 矩陣快速冪 給定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 2 1 1 11 1 1 1 1 1...
模板 矩陣快速冪 洛谷 P3390
題目背景 矩陣快速冪 題目描述 給定 n times nn n 的矩陣 aa,求 a kak。輸入格式 第一行兩個整數 n,kn,k 接下來 nn 行,每行 nn 個整數,第 ii 行的第 jj 的數表示 a a i,j 輸出格式 輸出 a ka k共 nn 行,每行 nn 個數,第 ii 行第 j...
洛谷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 ...