矩陣乘法(超詳細!!!)


矩陣是什么?

是一個數字陣列,一個二維數組,n行r列的陣列稱為n*r矩陣。如果n==r則稱為方陣。

2×3矩陣

5×5方陣

特殊的單位矩陣,除了對角線為1,其他位置為0的矩陣。類似乘法中的1.

3×3單位矩陣I=


 矩陣乘法

矩陣乘法中第一個矩陣的列要等於第二個矩陣的行

一個m∗n的的A矩陣,和一個n∗p的B矩陣相乘,將得到一個m∗p的矩陣C 

來水道炒雞簡單的習題——

矩陣 A×B(信息學奧賽一本通 1641)

【題目描述】

矩陣 A 規模為 n×m,矩陣 B 規模為 m×p,現需要你求 A×B。 矩陣相乘的定義:n×m 的矩陣與 m×p 的矩陣相乘變成 n×p 的矩陣,令 aik為矩陣 AA中的元素,bkj為矩陣 B中的元素,則相乘所得矩陣 C中的元素

【輸入】

第一行兩個數 n,m; 接下來 n 行 m 列描述一個矩陣 A; 接下來一行輸入 p; 接下來 m 行 p 列描述一個矩陣 B。 【輸出】 輸出矩陣 AA 與矩陣 BB 相乘所得的矩陣 C。

【輸入樣例】

2 3

1 2 3

3 2 1

2

11

2 2

3 3

【輸出樣例】

14 14

10 10

 


 

矩陣乘法中方陣可以用快速冪加速遞推

方陣C=An,因為矩陣滿足結合律可以隨意拆開乘再合並

用一道簡單的模板題來加深對“矩陣乘法加速遞推”的理解吧——

Fibonacci 第 n 項(信息學奧賽一本通 1642)

【題目描述】

大家都知道 Fibonacci 數列吧,f1=1,f2=1,f3=2,f4=3,…,fn=fn−1+fn−2 。 現在問題很簡單,輸入 n和 m,求 fn mod m。

【輸入】

輸入 n,m。

【輸出】

輸出 fn mod m。

【輸入樣例】

5 1000

【輸出樣例】

5

 

題意:fn=fn-1+fn-2

構造:fn-1=fn-1+0*fn-2

構造一維遞推式和相同維數的方陣。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM