zoukankan      html  css  js  c++  java
  • 九度OJ 1001:A+B for Matrices

    时间限制:1 秒

    内存限制:32 兆

    特殊判题:

    提交:17682

    解决:7079

    题目描述:

        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
    来源:
    2011年浙江大学计算机及软件工程研究生机试真题

    思路:

    本题的意思是计算两个矩阵的和中, 全0行和全0列的个数。


    代码:

    #include <stdio.h>
     
    #define N 10
     
    int main(void)
    {
        int m, n, i, j;
        int a[N][N], b[N][N];
     
        while (scanf("%d", &m) != EOF)
        {
            if (m == 0)
                break;
     
            scanf("%d", &n);
            for(i=0; i<m; i++)
            {
                for(j=0; j<n; j++)
                {
                    scanf("%d", &a[i][j]);
                }
            }
            int count = 0;
            for(i=0; i<m; i++)
            {
                int zerorow = 1;
                for(j=0; j<n; j++)
                {
                    scanf("%d", &b[i][j]);
                    a[i][j] += b[i][j];
                    if (a[i][j] != 0)
                        zerorow = 0;
                }
                count += zerorow;
            }
            for(j=0; j<n; j++)
            {
                int zerocol = 1;
                for(i=0; i<m; i++)
                {
                    if (a[i][j] != 0)
                        zerocol = 0;
                }
                count += zerocol;
            }
     
            printf("%d
    ", count);
        }
     
        return 0;
    }
    /**************************************************************
        Problem: 1001
        User: liangrx06
        Language: C
        Result: Accepted
        Time:0 ms
        Memory:912 kb
    ****************************************************************/


    编程算法爱好者。
  • 相关阅读:
    linux kernel内存碎片防治技术
    内核线程
    Linux内核高端内存
    Lcd(一)显示原理
    LSB和MSB
    图解slub
    数据库小试题2
    编写函数获取上月的最后一天
    php中的static静态变量
    mysql小试题
  • 原文地址:https://www.cnblogs.com/liangrx06/p/5084030.html
Copyright © 2011-2022 走看看