蓝桥杯【JAVA】—— 矩阵乘法

1、题目:
蓝桥杯【JAVA】—— 矩阵乘法_第1张图片
蓝桥杯【JAVA】—— 矩阵乘法_第2张图片
2、程序代码如下:

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner get=new Scanner(System.in);
		int m=get.nextInt();//A(m,s)
		int s=get.nextInt();//B(s,n)
		int n=get.nextInt();
		int ms[][]=new int[m][s];
		int sn[][]=new int[s][n];
		int mn[][]=new int[m][n];
		for(int i=0;i

上述写法虽然能够运行,在eclipse能够成功通过,但是在蓝桥杯官网上会出现运行超时的问题,所以下面提供一个可以通过运行达到满分的示例——

import java.util.Scanner;
public class Main
{
	public static void main(String[] args)
	{
		Scanner input=new Scanner(System.in);
		int m=input.nextInt();
		int s=input.nextInt();
		int n=input.nextInt();
		int[][] a=new int[m+1][s+1];
		int[][] b=new int[s+1][n+1];
		int[][] c=new int[m+1][n+1];
		int i,j,k;
		for(i=1;i<=m;i++)
			for(j=1;j<=s;j++)
				a[i][j]=input.nextInt();
		for(i=1;i<=s;i++)
			for(j=1;j<=n;j++)
				b[i][j]=input.nextInt();
		for(k=1;k<=s;k++)
			for(i=1;i<=m;i++)
				for(j=1;j<=n;j++)
					c[i][j]+=a[i][k]*b[k][j];
	    for(i=1;i<=m;i++)
	    {
	    	for(j=1;j<=n;j++)
	    	{
	    		System.out.print(c[i][j]);
	    		if(j!=n)
	    			System.out.print(" ");
	    	}
	    	System.out.println();
	    }
	}
}

蓝桥杯【JAVA】—— 矩阵乘法_第3张图片

你可能感兴趣的:(JAVA,蓝桥杯【JAVA】练习)