• Java实现 蓝桥杯 算法提高 矩阵乘法(暴力)


    试题 算法提高 矩阵乘法

    问题描述
      小明最近刚刚学习了矩阵乘法,但是他计算的速度太慢,于是他希望你能帮他写一个矩阵乘法的运算器。
    输入格式
      输入的第一行包含三个正整数N,M,K,表示一个NM的矩阵乘以一个MK的矩阵。接下来N行,每行M个整数,表示第一个矩阵。再接下来的M行,每行K个整数,表示第二个矩阵。
    输出格式
      输出有N行,每行K个整数,表示矩阵乘法的结果。
    样例输入
    2 1 3
    1
    2
    1 2 3
    样例输出
    1 2 3
    2 4 6
    数据规模和约定
      0<N,M,K<=100, 0<=矩阵中的每个数<=1000

     
    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args){
            Scanner sc = new Scanner(System.in);
            int n = sc.nextInt();
            int m = sc.nextInt();
            int k = sc.nextInt();
            int[][] map1 = new int[n][m];
            int[][] map2 = new int[m][k];
            int[][] map3 = new int[n][k];
            for (int i=0; i<n;i++) {
                for (int j=0; j<m; j++) {
                    map1[i][j]=sc.nextInt();
                }
            }
            for (int i=0; i<m;i++) {
                for (int j=0; j<k; j++) {
                    map2[i][j] = sc.nextInt();
                }
            }
            sc.close();
            for (int i=0; i<n; i++) {
                for (int j=0; j<m; j++) {
                    for (int k1=0; k1<k; k1++)  {
                        map3[i][k1] += map1[i][j] * map2[j][k1];
                    }
                }
            }
            for (int i=0; i<n; i++){
                for (int j=0; j<k; j++){
                    System.out.print(map3[i][j]+" ");
                }
                System.out.println();
            }
        }
    }
    
    
  • 相关阅读:
    using 关键字有两个主要用途:
    Pl/SQL 从零开始
    SQL从零开始
    wcf 从零开始
    设置主键
    dbf导入sqlserver
    SHBrowseForFolder
    oracle 导入导出数据库
    sql改列名
    Delphi 为Edit或是Memo添加一个气球提示
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13074612.html
Copyright © 2020-2023  润新知