zoukankan      html  css  js  c++  java
  • 题目1489:计算两个矩阵的乘积

    题目1489:计算两个矩阵的乘积

    时间限制:1 秒

    内存限制:128 兆

    特殊判题:

    提交:5744

    解决:1234

    题目描述:

    计算两个矩阵的乘积,第一个是2*3,第二个是3*2

    输入:

    输入为两个矩阵,其中一个为2*3的矩阵,另一个为3*2的矩阵

    输出:

    一个2*2的矩阵(每一个数字后都跟一个空格)

    样例输入:
    1 2 3
    3 4 5
    6 7
    8 9
    10 11
    样例输出:
    52 58
    100 112
    来源:
    2012年哈尔滨工业大学计算机研究生机试真题
    矩阵乘积的计算是  52 = 1*6+2*8+3*10  58 = 1*7+2*9+3*11 100 = 3*6+4*8+5*10 112 = 3*7+4*9+5*11
    即 c[0][0] = a[0][0]*b[0][0]+a[0][1]*b[1][0]+a[0][2]*b[2][0] i行j列互乘相加
    #include<iostream>
    #include<algorithm>
    #include<cstdio>
    #include<cstring>
    #include<cmath>
    #include<stack>
    using namespace std;
    int c[5][5];
    int main()
    {
        int a[5][5],b[5][5];
        while(~scanf("%d%d%d",&a[0][0],&a[0][1],&a[0][2]))
        {
            for(int i=1; i<=1; i++)
            {
                for(int j=0; j<=2; j++)
                    scanf("%d",&a[i][j]);
            }
            for(int i=0; i<=2; i++)
            {
                for(int j=0; j<=1; j++)
                    scanf("%d",&b[i][j]);
            }
            for(int i=0; i<2; i++)
            {
                for(int j=0; j<2; j++)
                {
                    c[i][j]=0;
                    for(int k=0; k<3; k++)
                        c[i][j] = c[i][j] + a[i][k]*b[k][j];
                }
            }
            for(int i=0; i<2; i++)
            {
                for(int j=0; j<2; j++)
                {
                    printf("%d ",c[i][j]);
                }
                printf("
    ");
            }
        }
        return 0;
    }
    彼时当年少,莫负好时光。
  • 相关阅读:
    vue2手写vuex
    200.岛屿数量(DFS M-岛屿系列)
    739.每日温度(栈M)
    150.逆波兰表达式求值(栈M)
    20.有效的括号(栈L)
    前端性能优化与SEO优化整理
    Typescript:类型断言
    如何在浏览器中快速调试Typescript
    Typescript:枚举
    Typescript:接口
  • 原文地址:https://www.cnblogs.com/l609929321/p/6591368.html
Copyright © 2011-2022 走看看