一二三四五 上山打老虎

天梯赛L1-048 矩阵A乘以B (15 分)

链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805082313310208

矩阵乘法:
for(int i=1;i<=a;i++)
for(int j=1;j<=y;j++)
for(int k=1;k<=b;k++)
c[i][j]+=s[i][k]*t[k][j];

代码:

#include<bits/stdc++.h>

using namespace std;
int s[105][105];
int t[105][105];
int c[105][105];
int main (){
    int a,b,x,y;
    cin>>a>>b;
    for(int i=1;i<=a;i++)
        for(int j=1;j<=b;j++)cin>>s[i][j];
    cin>>x>>y;
    for(int i=1;i<=x;i++)
        for(int j=1;j<=y;j++)cin>>t[i][j];
   if(b!=x)cout<<"Error: "<<b<<" != "<<x;
   else {
       for(int i=1;i<=a;i++)
           for(int j=1;j<=y;j++)
               for(int k=1;k<=b;k++)
            c[i][j]+=s[i][k]*t[k][j];
           
   
    cout<<a<<" "<<y<<endl;
    for(int i=1;i<=a;i++){
        for(int j=1;j<=y;j++)
        {
            cout<<c[i][j];
            if(j<y)cout<<" ";
        }
        if(i<a)cout<<endl;
    }
   }
    return 0;
}
posted @ 2021-04-20 22:18  黒川川  阅读(79)  评论(0)    收藏  举报