zoukankan      html  css  js  c++  java
  • akoj-1055-矩阵乘法

    矩阵乘法

    Time Limit:1000MS  Memory Limit:65536K
    Total Submit:19 Accepted:7

    Description

    矩阵乘法是线性代数中最基本的运算之一。 
    给定三个矩阵 ABC 请编写程序判断A*B = C 是否成立。

    Input

    输入包含多组数据。每组数据的格式如下: 
    第一行包括两个整数p 和q,表示矩阵A 的大小。后继p 行,每行有q 个整数,表示矩阵A 
    的元素内容。 
    紧接着用相同的格式给出矩阵B 和矩阵C。 
    输入数据的最后一行是两个0,你的程序处理到这里时就应该退出了。 
    输入数据中所有的整数绝对值都不超过100。

    Output

    对每一组输入数据,你的程序都要输出单独一行字符。 
    如果 A*B=C成立则输出”Yes” 
    如果 A 和B 根本不能相乘,或A*B=C不成立,则输出”No”。注意大小写。

    Sample Input

    2 3
    1 2 3
    4 5 6
    3 2
    1 2
    3 4
    5 6
    2 2
    22 28
    49 64
    1 2
    1 2
    2 1
    2 
    1 
    2 2
    2 4 
    1 2 
    1 2 
    1 2 
    1 1 
    1
    1 1 
    1
    
    0 0

    Sample Output

    Yes
    No
    No

    Hint

    此题考察线性代数基本概念,请参阅线性代数教材。

    Source

    2009中科大ACM校赛-普及版

    [Submit]   [Go Back]   [Status]   [Discuss]



    #include <stdio.h>
    #include <string.h>
    #define MAXN 101
    
    int a[MAXN][MAXN], b[MAXN][MAXN], c[MAXN][MAXN], d[MAXN][MAXN];
    
    int main()
    {
    	int i, j, m, n, x, y, u, v, p;
    	while ( ~scanf("%d%d", &m, &n))
    	{
    		if ( m == 0 && n == 0 ) break;
    		for ( i=0; i<m; i++ ) {
    			for ( j=0; j<n; j++ ) {
    				scanf("%d", &a[i][j]);
    			}
    		}
    		scanf("%d%d", &x, &y);
    		for ( i=0; i<x; i++ ) {
    			for ( j=0; j<y; j++ ) {
    				scanf("%d", &b[i][j]);
    			}
    		}
    		scanf("%d%d", &u, &v);
    		for ( i=0; i<u; i++ ) {
    			for ( j=0; j<v; j++ ) {
    				scanf("%d", &c[i][j]);
    			}
    		}
    		if ( n != x || m != u || v != y ) {
    			puts("No");
    		}
    		else {
    		
    			for ( i=0; i<u; i++ ) {
    				for ( j=0; j<v; j++ ) {
    					d[i][j] = 0;
    					for ( p=0; p<n; p++ ) {
    						d[i][j] += a[i][p] * b[p][j];
    					}
    					if ( d[i][j] != c[i][j] ) break;
    				}
    			}
    			if ( i == u && j == v ) puts("Yes");
    			else puts("No");
    	    }
    	}
    	
    	return 0;
    }



  • 相关阅读:
    java-jdbc基础巩固
    webservice简单的编写,发布,调用
    HanLP笔记
    HanLP笔记
    HanLP笔记
    HanLP笔记
    Python学习小计
    R学习小计
    SPSS学习小记
    C语言学习小记
  • 原文地址:https://www.cnblogs.com/fayne/p/7224822.html
Copyright © 2011-2022 走看看