问题 1989 --A+B for Matrices

1989: A+B for Matrices

时间限制: 1 Sec  内存限制: 32 MB
提交: 29  解决: 22
[提交][状态][讨论版][数据上传:][下载FPS1元][下载测试数据1元][20kb]

题目描述

This time, you are supposed to find A+B where A and B are two matrices, and then count the number of zero rows and columns.

输入

    The input consists of several test cases, each starts with a pair of positive integers M and N (≤10) which are the number of rows and columns of the matrices, respectively. Then 2*M lines follow, each contains N integers in [-100, 100], separated by a space. The first M lines correspond to the elements of A and the second M lines to that of B.

    The input is terminated by a zero M and that case must NOT be processed.


输出

    For each test case you should output in one line the total number of zero rows and columns of A+B.

样例输入

2 2
1 1
1 1
-1 -1
10 9
2 3
1 2 3
4 5 6
-1 -2 -3
-4 -5 -6
0

样例输出

1
5

提示


本题需要解决的问题是求出两个矩阵相加后的结果矩阵中一共有多少零行和零列。所谓零行在线性代数中的就是一行中所有元素为0的行,同样零列也就是一列中所有元素为0的列。那么,解决本题就进行一次矩阵相加即可。用两个数组存储两个矩阵,再用一个数组存储这两个矩阵相加后的结果。然后对结果进行两次遍历,分别求出零行的数目和零列的数目。






注意这里有多组测试数据,那么怎样停止程序呢?每次读入第一个整数,判断是否为0,如果为0则说明输入结束了。



步骤如下:



1)读入数据(两个矩阵);



2)对读入的两个矩阵求和,结果存储在另一个矩阵(结果矩阵)中;



3)对结果矩阵进行两次遍历,获得零行和零列的总数。





来源

[提交][状态]