1005 - A+B 输入输出练习VIII

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 32 MB

你的任务是计算若干整数的和。

题目输入

输入的第一行为一个整数N,接下来N行每行先输入一个整数M,然后在同一行内输入M个整数。

题目输出

对于每组输入,输出M个数的和,每组输出之间输出一个空行。

输入/输出样例

输入格式

3
4 1 2 3 4
5 1 2 3 4 5
3 1 2 3

输出格式

10

15

6

C语言解答

#include<stdio.h>

int main()
{
	int n,m,i,j,c,sum=0;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d",&m);
		for(j=0;j<m;j++)
		{
			scanf("%d",&c);
			sum+=c;
		}
		if(i<n-1)
		{
			printf("%d\n",sum);
			printf("\n");
			sum=0;
        }
        else
        {
            printf("%d\n",sum);
            sum=0;
        }
    }
    return 0;
}

C++解答

#include<stdio.h>

int main()
{
	int n,m,i,j,c,sum=0;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d",&m);
		for(j=0;j<m;j++)
		{
			scanf("%d",&c);
			sum+=c;
		}
		if(i<n-1)
		{
			printf("%d\n",sum);
			printf("\n");
			sum=0;
        }
        else
        {
            printf("%d\n",sum);
            sum=0;
        }
    }
    return 0;
}

Java解答

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		final int MAX=1024;
		int number;
		@SuppressWarnings("resource")
		Scanner in = new Scanner(System.in);
		int flag;
		int[] a =new int[MAX];
		int[] count = new int[MAX];
		flag = in.nextInt();
		for(int i =0;i<flag;i++){
			number = in.nextInt();
			for(int k=0;k<number;k++){
				a[k] = in.nextInt();
				count[i] += a[k];
			}
		}
		for(int i =0;i<flag;i++){
			System.out.println(count[i]+"\n");
		}
	}
}

Python解答

import sys
for line in sys.stdin:
    a = line.split()
    b = map(lambda x:int(x),a[1:])
    if len(b) != 0:
       print reduce(lambda x,y:x+y,b)
       print ''