• 51nod 1137 矩阵乘法


    基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题
     收藏
     关注
    给出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示例
    2
    1 0
    0 1
    0 1
    1 0
    Output示例
    0 1
    1 0

    题解:按定义模拟

    AC代码:
     1 #include <iostream>
     2 using namespace std;
     3 int n;
     4 struct matrix
     5 {
     6     int m[105][105];
     7 };
     8 matrix mul(matrix A,matrix B)
     9 {
    10     matrix ret;
    11     for(int i=0;i<n;i++)
    12         for(int j=0;j<n;j++)
    13     {
    14         ret.m[i][j]=0;
    15         for(int k=0;k<n;k++)
    16             ret.m[i][j]+=A.m[i][k]*B.m[k][j];
    17     }
    18     return ret;
    19 }
    20 int main()
    21 {
    22     cin>>n;
    23     matrix A,B,ans;
    24     for(int i=0;i<n;i++)
    25         for(int j=0;j<n;j++)
    26         cin>>A.m[i][j];
    27     for(int i=0;i<n;i++)
    28         for(int j=0;j<n;j++)
    29         cin>>B.m[i][j];
    30     ans=mul(A,B);
    31     for(int i=0;i<n;i++)
    32         for(int j=0;j<n;j++)
    33     {
    34         cout<<ans.m[i][j];
    35         if(j==n-1)
    36             cout<<endl;
    37         else
    38             cout<<" ";
    39     }
    40     return 0;
    41 }
    View Code
  • 相关阅读:
    入门指引之永久素材
    入门指引之上传临时素材
    入门指引之查看accesstoken
    java中的左移 右移
    病狗问题
    leetcode 几何题 位运算 面试编程
    CNN网络参数
    python学习整理
    JAVA问题整理
    计算机网络整理
  • 原文地址:https://www.cnblogs.com/onlyli/p/7240469.html
Copyright © 2020-2023  润新知