列表

详情


BC132. 矩阵计算

描述

输入NxM矩阵,矩阵元素均为整数,计算其中大于零的元素之和。

输入描述

第一行为N M(N: 矩阵行数;M: 矩阵列数,且M,N<=10),接下来的N行为矩阵各行。

输出描述

一行,其中大于零的元素之和。

示例1

输入:

3 3
2 3 4
-5 -9 -7
0 8 -4

输出:

17

原站题解

C 解法, 执行用时: 1ms, 内存消耗: 264KB, 提交时间: 2021-01-23

#include<stdio.h>

int main()
{
	int n,m,i,j,sum;
	scanf("%d %d",&n,&m);
	int a[n][m];
	sum=0;
	for(i=0;i<n;i++)
	{
		for(j=0;j<m;j++)
		{
			scanf("%d",&a[i][j]); 
		}
	}
	for(i=0;i<n;i++)
	{
		for(j=0;j<m;j++)
		{
			if(a[i][j]>0)
			{
				sum=sum+a[i][j];
			}
		}
	}
	printf("%d\n",sum);
	return 0;
}

C 解法, 执行用时: 1ms, 内存消耗: 276KB, 提交时间: 2021-01-09

#include <stdio.h>

int main()
{
    int m,n,i,j,sum=0;
    scanf("%d %d",&m,&n);
    int a[m][n];
    for(i=0;i<m;i++)
    {
        for(j=0;j<n;j++)
        {
            scanf("%d",&a[i][j]);
            if(a[i][j]>0)
            {
                sum+=a[i][j];
            }
        }
    }
    printf("%d",sum);
    return 0;
}

C 解法, 执行用时: 1ms, 内存消耗: 296KB, 提交时间: 2021-09-14

#include<stdio.h>
int main()
{
    int n,flag=0,a,b;
    scanf("%d %d",&a,&b);
    while(~scanf("%d",&n))
    {
        if(n>0)
            flag+=n;
        n=0;
    }
    printf("%d",flag);
}

C 解法, 执行用时: 1ms, 内存消耗: 296KB, 提交时间: 2021-07-27

#include<stdio.h>
int main()
{
    int a[10][10];
    int i,j,n,m;
    int num=0;
    scanf("%d %d",&i,&j);
    for(n=0;n<i;n++)
    {
        for(m=0;m<j;m++)
        {
            scanf("%d",&a[n][m]);
            if(a[n][m]>0)
                num=num+a[n][m];
        }
    }
    printf("%d\n",num);
    return 0;
}

C 解法, 执行用时: 1ms, 内存消耗: 320KB, 提交时间: 2021-09-10

#include <stdio.h>
int main()
{
    int m=0,n=0,sum=0;
    int a[10][10];
    scanf("%d %d",&m,&n);
    for(int i=0;i<m;++i)
        for(int j=0;j<n;++j)
        {
            scanf("%d",&a[i][j]);
        }
    for(int i=0;i<m;++i)
        for(int j=0;j<n;++j)
        {
            if(a[i][j]>0) sum+=a[i][j];
        }
    printf("%d",sum);
    return 0;
}

上一题