您的位置:首页 > 其它

51nod--1137 矩阵乘法

2017-07-20 22:41 337 查看
题目:  给出2个N* N的矩阵M1和M2,输出2个矩阵相乘后的结果。Input
第1行:1个数N,表示矩阵的大小(2 <= N <= 100)
第2 - N + 1行,每行N个数,对应M1的1行(0 <= M1[i] <= 1000)
第N + 2 - 2N + 1行,每行N个数,对应M2的1行(0 <= M2[i] <= 1000)
Output
输出共N行,每行N个数,对应M1 * M2的结果的一行。
Input示例
21 00 10 11 0
Output示例
0 11 0
纯数学矩阵乘法,按相关数学定义即好:
eg:
关键代码:
 for(int i=0; i<n; i++)for(int j=0; j<n; j++){c[i][j]=0;for(int k=0; k<n; k++){c[i][j]+=(a[i][k]*b[k][j]);}}
完整代码:
#include <iostream>using namespace std;int main(){int n;cin >> n;int a;int b;int c;for(int i=0; i<n; i++)for(int j=0; j<n; j++)cin >> a[i][j];for(int i=0; i<n; i++)for(int j=0; j<n; j++)cin >> b[i][j];for(int i=0; i<n; i++)for(int j=0; j<n; j++){c[i][j]=0;for(int k=0; k<n; k++){c[i][j]+=(a[i][k]*b[k][j]);}}for(int i=0; i<n; i++){for(int j=0; j<n; j++)cout << c[i][j] << " " ;cout << endl;}return 0;}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: