日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

#100. 矩阵乘法

發(fā)布時(shí)間:2023/12/18 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 #100. 矩阵乘法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

#100. 矩陣乘法

內(nèi)存限制:256 MiB時(shí)間限制:2000 ms標(biāo)準(zhǔn)輸入輸出 題目類型:傳統(tǒng)評測方式:文本比較 上傳者: 匿名 提交提交記錄統(tǒng)計(jì)討論測試數(shù)據(jù)

題目描述

這是一道模板題。

分別給定?n×p n \times pn×p?和?p×m p \times mp×m?的兩個(gè)矩陣?A AA?和?B BB,求?A×B A \times BA×B。

輸入格式

第一行三個(gè)正整數(shù)?n nn、p pp、m mm,表示矩陣的長寬。
之后的?n nn?行,每行?p pp?個(gè)整數(shù),表示矩陣?A AA。
之后的?p pp?行,每行?m mm?個(gè)整數(shù),表示矩陣?B BB。

輸出格式

輸出?n nn?行,每行?m mm?個(gè)整數(shù),表示矩陣?A×B A \times BA×B,每個(gè)數(shù)模?109+7 10 ^ 9 + 710?9??+7?輸出。

樣例

樣例輸入

3 4 5 -2 -8 -9 8 -10 0 6 -8 -10 -6 6 9 4 -7 5 -5 9 10 -2 -10 5 5 -3 -7 -3 8 -2 -6 7 7 3 -2

樣例輸出

999999898 149 153 999999929 999999951 999999997 999999979 999999883 74 999999921 999999835 103 55 95 999999857

數(shù)據(jù)范圍與提示

1≤n,p,m≤500,??109≤Ai,j,Bi,j≤109 1 \leq n, p, m \leq 500,\ -10 ^ 9 \leq A_{i, j}, B_{i, j} \leq 10 ^ 91n,p,m500,??10?9??A?i,j??,B?i,j??10?9??

分類標(biāo)簽

模板?矩陣乘法?數(shù)學(xué) ? zhx說矩陣乘法的時(shí)候把k放在外面會有玄學(xué)優(yōu)化?

上面那個(gè)是k在外面的,貌似真有玄學(xué)優(yōu)化?:astonished:

?

#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #define LL long long using namespace std; const int MAXN=1001; const int mod=1e9+7; inline int read() {char c=getchar();int flag=1,x=0;while(c<'0'||c>'9') {if(c=='-') flag=-1;c=getchar();}while(c>='0'&&c<='9') x=x*10+c-48,c=getchar();return x*flag; } int n,p,m; long long int a[MAXN][MAXN]; long long int b[MAXN][MAXN]; long long int c[MAXN][MAXN]; int main() {n=read();p=read();m=read();for(int i=1;i<=n;i++)for(int j=1;j<=p;j++)a[i][j]=read(),a[i][j]=(a[i][j]%mod+mod)%mod;for(int i=1;i<=p;i++)for(int j=1;j<=m;j++)b[i][j]=read(),b[i][j]=(b[i][j]%mod+mod)%mod;for(int k=1;k<=p;k++)for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)c[i][j]=( c[i][j]+(a[i][k]*b[k][j])%mod )%mod;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++)printf("%lld ",c[i][j]);printf("\n");}return 0; }

  

轉(zhuǎn)載于:https://www.cnblogs.com/zwfymqz/p/7805848.html

總結(jié)

以上是生活随笔為你收集整理的#100. 矩阵乘法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。