生活随笔
收集整理的這篇文章主要介紹了
矩阵乘法(TLE)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
矩陣乘法(TLE)
問題描述 :
給定一個N階矩陣A,輸出A的M次冪(M是非負整數)
例如:
A =
1 2
3 4
A的2次冪
7 10
15 22
輸入說明 :
第一行是一個正整數N、M(1<=N<=30, 0<=M<=5),表示矩陣A的階數和要求的冪數
接下來N行,每行N個絕對值不超過10的非負整數,描述矩陣A的值
輸出說明 :
輸出共N行,每行N個整數,表示A的M次冪所對應的矩陣。相鄰的數之間用一個空格隔開
輸入范例 :
2 2
1 2
3 4
輸出范例 :
7 10
15 22
#include<stdio.h>
int main(){int n
,m
;int i
,j
;int a
[30][30];int p
,q
,u
,v
,s
,t
;int b
[30][30],c
[30][30];scanf("%d %d",&n
,&m
);for(i
=0;i
<n
;i
++){for(j
=0;j
<n
;j
++){scanf("%d",&a
[i
][j
]);b
[i
][j
]=a
[i
][j
];}}while(m
--!=1){ for(p
=0;p
<n
;p
++){ for(j
=0;j
<n
;j
++){int pro
=0,sum
=0;for(q
=0,i
=0;q
<n
,i
<n
;q
++,i
++){pro
=b
[p
][q
]*a
[i
][j
];sum
=sum
+pro
;}c
[p
][j
]=sum
;}}for(u
=0;u
<n
;u
++){for(v
=0;v
<n
;v
++){b
[u
][v
]=c
[u
][v
];}}}for(s
=0;s
<n
;s
++){for(t
=0;t
<n
;t
++){printf("%d ",c
[s
][t
]);}printf("\n");}return 0;
}
總結
以上是生活随笔為你收集整理的矩阵乘法(TLE)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。