1001 A+B for Matrices

题目描述:

    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的即可

#include <iostream>

using namespace std;

int main()
{
	int m,n;
	int a[11][11];
	int b[11][11];
	int c[11][11];
	int sum;
	int answer;
	while(cin>>m)
	{
		sum=0;
		answer=0;


		if(m!=0)
		{
			cin>>n;

			for(int i=0;i<m;i++)
				for(int j=0;j<n;j++)
				{
					cin>>a[i][j];
				}

			for(int i=0;i<m;i++)
				for(int j=0;j<n;j++)
				{
					cin>>b[i][j];
				}

			for(int i=0;i<m;i++)
				for(int j=0;j<n;j++)
				{
					c[i][j]=a[i][j]+b[i][j];
				}

				
           for(int i=0;i<m;i++)
		   {
			   sum=0;
			   for(int j=0;j<n;j++)
			   {
				   sum+=c[i][j];
			   }
			   if(sum==0)
			   {
				   answer++;
			   }

		   }


		   for(int i=0;i<n;i++)
		   {
			   sum=0;
			   for(int j=0;j<m;j++)
			   {
				   sum+=c[j][i];

			   }
			   if(sum==0)
			   {
				   answer++;
			   }
		   }

		   cout<<answer<<endl;



		}
		else
		{
			break;
		}
	}
	



	return 0;
}


你可能感兴趣的:(1001 A+B for Matrices)