hpuvj 1575 Tr A(快速冪求模模板題)

2021-08-06 05:16:18 字數 1073 閱讀 1970

tr a

time limit:1000ms

memory limit:32768kb

64bit io format:%i64d & %i64u

submit

status

description

a為乙個方陣,則tr a表示a的跡(就是主對角線上各項的和),現要求tr(a^k)%9973。 

input

資料的第一行是乙個t,表示有t組資料。 

每組資料的第一行有n(2 <= n <= 10)和k(2 <= k < 10^9)兩個資料。接下來有n行,每行有n個資料,每個資料的範圍是[0,9],表示方陣a的內容。 

output

對應每組資料,輸出tr(a^k)%9973。

sample input

2

2 21 0

0 13 99999999

1 2 3

4 5 6

7 8 9

sample output

2

2686

source

hdu 2007-1 programming contest

也是模板題 不過這個模板又和之前的有點不一樣 用了重鑄還是啥來著 完了名字了 不過就那個operator*這裡不一樣 前面的是沒有這個的,把乘法運算子的意義給變了一下,不過其實本質上是一樣的,**如下:

#include#include#includeusing namespace std;

const int mod=9973;

int n,k;

struct mat

}}base;

mat operator*(mat s,mat b)

} }return r;

}void power(mat &ans)

}int main()

printf("%d\n",sum);

}}

hdu1575 Tr A(矩陣快速冪)

今天做的第二道矩陣快速冪題,因為是初次接觸,各種奇葩錯誤整整除錯了一下午。廢話不說,入正題。該題應該屬於矩陣快速冪的裸題了吧,知道快速冪原理 二進位制迭代法,非遞迴版 後,剩下的只是處理矩陣乘法的功夫了,我直接用個結構體來表示矩陣,確實能省去不少功夫 這裡一定要注意用單位矩陣 來初次相乘,但不要把它...

HDU 1575 Tr A 矩陣快速冪

a為乙個方陣,則tr a表示a的跡 就是主對角線上各項的和 現要求tr a k 9973。資料的第一行是乙個t,表示有t組資料。每組資料的第一行有n 2 n 10 和k 2 k 10 9 兩個資料。接下來有n行,每行有n個資料,每個資料的範圍是 0,9 表示方陣a的內容。對應每組資料,輸出tr a ...

HDU 1575 Tr A(矩陣快速冪)

思路 簡單的矩陣快速冪 include include includeusing namespace std int n,mod struct mat mat mul mat a,mat b return t mat expo mat p,int k return e int add mat a i...