首页 > 试题广场 >

多组_二维数组_T组形式

[编程题]多组_二维数组_T组形式
  • 热度指数:8440 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定 t 组询问,每次询问给出一个 nm 列的二维正整数数组 a ,第 i 行第 j 列元素的值为 a_{i,j}
请你分别求出每个数组的元素之和。

输入描述:
第一行有一个整数 t\ (\ 1 \leq t \leq 10^5\ )
随后 t 组数据。
每组的第一行有两个整数 n\ (\ 1 \leq n \leq 10^3\ )m\ (\ 1 \leq m \leq 10^3\ )
每组的随后 n 行,每行有 m 个整数 a_{i,j}\ (\ 1 \leq a_{i,j} \leq 10^9\ )
保证 \sum n \cdot m \leq 10^6


输出描述:
输出 t 行,每行一个整数,代表数组元素之和。
示例1

输入

3
3 4
1 2 3 4
5 6 7 8
9 10 11 12
1 1
2024
3 2
1 1
4 5
1 4

输出

78
2024
16
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        int n=in.nextInt();//输入要几个二维数组
        for(;n>0;n--)//处理每个数组
        {
            //初始化sum
            long sum=0;
            //每个2D数组的行和列
            int i=in.nextInt();
            int j=in.nextInt();
            //开辟二维数组空间
            int [][]array=new int[i][j];
            //赋值
            for(int k=0;k<array.length;k++){
                for(int l=0;l<array[k].length;l++){
                    array[k][l]=in.nextInt();
                }
            }
            //遍历求和
            for(int k=0;k<array.length;k++){
                for(int l=0;l<array[k].length;l++){
                    sum+=array[k][l];
                }
            }
            System.out.println(sum);

        }

    }
}
发表于 2025-04-30 17:22:17 回复(0)
t = int(input())
for _ in range(t):
    sum_row = 0
    n, m = map(int, input().split())
    for i in range(n):
        row = list(map(int, input().split()))
        sum_row += sum(row)
    print(sum_row)

发表于 2024-11-30 21:34:50 回复(0)
while True:
    try:
        num = int(input())  # 数组的数量
        for i in range(num):
            n, m = map(int, input().split())  # 输入二维数组的行数和列数

            a = []  # 初始化列表

            # 利用for循环构建数组
            for i in range(n):
                row = list(map(int, input().split()))  # 读取每一行的元素
                a.append(row)  # 将行添加到数组中
           
            # 计算数组的和
            result = sum(sum(row) for row in a)   # 先计算每行的sum,再计算总和
            print(result)

    except:
        break
发表于 2024-08-16 14:27:36 回复(0)
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int t = sc.nextInt();
        for (int turn = 0; turn < t; turn++) {
            int n = sc.nextInt();
            int m = sc.nextInt();

            int[][] a = new int[n][m];
            long sum = 0;
            for (int i = 0; i < n; i++) {
                for (int j = 0; j < m; j++) {
                    a[i][j] = sc.nextInt();
                    sum += a[i][j];
                }
            }
            System.out.println(sum);
        }
        sc.close();

    }
}
发表于 2025-04-28 16:02:29 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        int s = in.nextInt();
        for(int i=0;i<s;i++){
            int n = in.nextInt();
            int m = in.nextInt();
            long sum = 0;
            for(int j =0;j<n;j++){
                for(int k=0;k<m;k++){
                    sum+=in.nextInt();
                }
            }
            System.out.println(sum);
        }
    }
}
发表于 2025-04-18 11:40:52 回复(0)
public class Program {
    public static void Main() {
        string line;
        int t = int.Parse(System.Console.ReadLine ()); //读取组数
        int x = 0;
        long sum = 0;

        if (t > 0) {
            //控制读取组
            for (int i = 0; i < t; i++) {
                string[] tokens = System.Console.ReadLine ().Split();
                x = int.Parse(tokens[0]);//行数
                //控制读取组内
                for (int j = 0; j < x; j++) {
                    tokens = System.Console.ReadLine ().Split();
                    foreach (string s in tokens) {
                        sum += int.Parse(s);
                    }
                }
                //输出这个数组的和
                System.Console.WriteLine(sum);
                sum = 0;
                x = 0;
            }
        } else
            System.Console.WriteLine(sum);
    }
}

发表于 2025-04-06 14:15:24 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        int t = 0;
        if (in.hasNextInt()){
            t = in.nextInt();
        }
        while(0 < t--){
            int n = 0;
            int m = 0;
            if(in.hasNextInt()){
                n = in.nextInt();
            }
            if(in.hasNextInt()){
                m = in.nextInt();
            }
            long sum = 0;
            int count = 0;
            count = n*m;
            while(0<count--){
                if(in.hasNextInt()){
                    sum += in.nextInt();
                }
            }
            System.out.println(sum);
        }
        in.close();
    }
}

发表于 2025-04-05 12:58:25 回复(0)
#include <stdio.h>
int main() {
    int long t;
    scanf("%ld", &t);
    for(int i=0; i<t; i++){
        int n, m;
        scanf("%d %d", &n, &m);
        int long long sum = 0;
        for(int j=0; j<n; j++){
            for(int k=0; k<m; k++){
                int long long temp;
                scanf("%lld", &temp);
                sum = sum + temp;
            }
        }
        printf("%lld\n", sum);
    }
    return 0;
}
发表于 2025-03-17 16:54:28 回复(0)
import sys

n = int(input())
for i in range(n):
    a,b = map(int,input().split(' '))
    s = 0
    for j in range(a):
        s+=sum(list(map(int,input().split(' '))))
    print(s)
发表于 2025-03-11 09:19:57 回复(0)
import sys
t=int(input())
for i in range(t):
    n, m = map(int, input().split())
    sumt=0
    for i in range(n):
        b=map(int, input().split())
        sumt += sum(b) #python中sum是函数不能用作变量名
    print(sumt)

发表于 2025-02-18 16:50:40 回复(0)
#include <iostream>
using namespace std;

int main() {
 
    int t;
    cin >> t;
    int n,m;
    long sum= 0;
    long  tmp;
    for (int k=0; k<t; k++) {
         sum= 0;
         cin >> n >> m;
         for (int i=0; i<n; i++) {
            for (int j=0; j<m; j++) {
                cin >>tmp;
                sum += tmp;
            }
         }
        cout<<sum<<endl;
    }
}
发表于 2025-02-12 14:49:07 回复(0)
C语言简单代码,注意不要弄混设的变量。
#include <stdio.h>

int main() {
    int  n;
    scanf("%d",&n);
    for (int  i=0;i<n;i++)
    {
        int  a,b;
        scanf("%d%d",&a,&b);
        int  l[a][b];
        long  long  sum=0;
        for (int  j=0;j<a;j++)
        {
            for (int  k=0;k<b;k++)
            {
                scanf("%d",&l[j][k]);
                sum+=l[j][k];
            }  
        }
        printf("%lld\n",sum);
    }
    return 0;
}

发表于 2025-02-07 19:46:30 回复(0)
#include <stdio.h>

int main() {
    int t,i,j,k,n,m,a[1000][1000];
    long long int sum=0;
   
    scanf("%d",&t);

    for(i=0;i<t;i++)
    {
        sum=0;
        scanf("%d%d",&n,&m);
        for(j=0;j<n;j++)
        {
            for(k=0;k<m;k++)
            {
                scanf("%d",&a[j][k]);
                sum+=a[j][k];
            }
        }
        printf("%lld\n",sum);
    }
    return 0;
}
发表于 2025-02-07 16:16:43 回复(0)
#include <stdio.h>

int main() {
    int m, n;
    long  t,a;
    scanf("%ld",&t);
   
    for (int i=0;i<t;i++) {
        long sum = 0;
        scanf("%d%d",&m,&n);
        for (int j=0;j<m;j++){
            for(int k=0;k<n;k++){
                scanf("%ld",&a);
                sum+=a;
            }
        }
        printf("%ld\n",sum);
        sum = 0;
    }
}

发表于 2024-12-15 20:58:05 回复(0)
#include <iostream>
using namespace std;

int main()
{
    int t,n,m,a;
    cin>>t;
    for(int i=0;i<t;i++)
    {
        long sum=0;
        cin>>n>>m;
        for(int j=0;j<n;j++)
        {
           for(int j1=0;j1<m;j1++)
           {
            cin>>a;
            sum+=a;
           };
        };
        cout<<sum<<endl;

    };
}
// 64 位输出请用 printf("%lld")
发表于 2024-12-03 20:51:55 回复(0)
import sys
t=int(input())
for i in range(t):
    n,m=map(int,input().split())
    b=0
    for i in range(n):
       a=list(map(int,input().split()))
       b=b+sum(a)
    print(b)
发表于 2024-12-03 20:29:29 回复(0)
import sys
i=0
x=0
y=0
sum=0
p=0

for line in sys.stdin:
    a = line.split()
    if i>0 and i==p+x+1:
        p=i
        x=int(a[0])
        y=int(a[1])
    elif i>0 and i<p+x+1:
        for c in range(y):
            sum += int(a[c])
    if i==p+x and i>0:
        print(sum)
        sum=0
       
    i+=1
发表于 2024-11-22 20:54:57 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int a= in.nextInt();
        for(int i1= 0;i1<a;i1++){
            int b=in.nextInt();
            int c=in.nextInt();
            long sum = 0;
            for(int i2= 0;i2<b;i2++){
                for(int i3= 0;i3<c;i3++){
                    sum = sum +in.nextInt();
                }
            }
            System.out.println(sum);
        }
       
    }
}
发表于 2024-11-18 16:38:35 回复(0)
#include <iostream>
using namespace std;

int main() {
  int siz;
  cin>>siz;
  for(int i=0;i<siz;i++){
    int x,y;
    cin>>x>>y;

    long long xy[x][y];
    long long jg;

    for(int i=0;i<x;i++){

        for(int j=0;j<y;j++){
            cin>>xy[i][j];
            jg+=xy[i][j];
        }

    }
    cout<<jg<<endl;
    jg=0;
  }

}
发表于 2024-11-14 17:24:38 回复(0)
import sys

a = sys.stdin.readline().strip().split()
t = int(a[0])

for i in range(t):
    temp = sys.stdin.readline().strip().split()
    n,m = int(temp[0]),int(temp[1])  
    total = 0
    for j in range(n):
        b = sys.stdin.readline().strip().split()
        total += sum(list(map(int, b)))
    print(total)
发表于 2024-10-19 13:06:27 回复(0)