首页 > 试题广场 >

单组_二维数组

[编程题]单组_二维数组
  • 热度指数:13362 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}给定一个 nm 列的二维正整数数组 \{a_{i,j}\},其中 1 \leqq i \leqq n1 \leqq j \leqq m,且 1 \leqq a_{i,j} \leqq 10^9
\hspace{15pt}请计算数组中所有元素之和。

输入描述:
\hspace{15pt}在一行上输入两个整数 n,m \left(1 \leqq n,m \leqq 10^3\right)
\hspace{15pt}接下来 n 行,每行输入 m 个整数 a_{i,1},a_{i,2},\dots,a_{i,m} \left(1 \leqq a_{i,j} \leqq 10^9\right)


输出描述:
\hspace{15pt}输出一个整数,表示二维数组所有元素之和。
示例1

输入

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

输出

78
a,b = map(int,input().split())
lists = []

for i in range(0,a):
    c = list(map(int,input().split()))
    lists = lists + c

print(sum(lists))
发表于 2024-09-08 22:57:02 回复(0)
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        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];
            }
        }

        sc.close();
        System.out.print(sum);

    }
}
发表于 2025-04-28 15:59:25 回复(0)
#include <iostream>
using namespace std;

int main() {
    int row, column = 0;
    long int elem_now, elem_next = 0;
    std::cin >> row >> column;
    for (int i_r = 0; i_r <= row - 1;i_r++) {
        for (int i_c = 0;i_c <= column - 1; i_c++ ) {
            std::cin >> elem_now;
            elem_next += elem_now;
        }
    }
    std::cout << elem_next << std::endl;
}

发表于 2025-06-20 18:46:13 回复(0)
import sys
n, m = map(int, input().split())
sum_number = 0
for line in sys.stdin:
    sum_number = sum_number + sum(list(map(int, line.split())))
print(sum_number)
发表于 2025-06-18 20:19:17 回复(0)
import sys

n,m = map(int,input().strip().split())
total = 0
for line in sys.stdin:
    li = list(map(int,line.strip().split(" ")))
    total = total + sum(li)

print(total)

发表于 2025-06-07 22:18:53 回复(0)
package main

import (
"fmt"
)

func main() {
n, m := 0, 0
fmt.Scan(&n, &m)
arr := make([][]int, n)
for i:=0; i < n; i++{
arr[i] = make([]int, m)
for j:= 0; j < m; j++{
a := 0
fmt.Scan(&a)
arr[i][j] = a
}
}
var sum int64
for i:=0; i < n; i++{
for j:= 0; j < m; j++{
sum += int64(arr[i][j])
}
}
fmt.Println(sum)
}
发表于 2025-05-07 22:54:03 回复(0)
#include <stdio.h>
#include <stdlib.h>

int main() {
    int a, b;
    scanf("%d %d", &a, &b);
    long c = 0;
    long* sum = (long *)malloc(sizeof(long)*(a+1));
    for(int i = 0;i<a;i++){
        for(int j = 0;j<b;j++){
            scanf("%ld",&c);
            sum[i]+=c;
        }
        sum[a]+=sum[i];
    }
    printf("%ld",sum[a]);
    return 0;
}
发表于 2025-04-23 15:41:57 回复(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 n = in.nextInt();
        int m = in.nextInt();
        long sum = 0;
        for(int i=0;i<n;i++){
            for(int j =0;j<m;j++){
                sum +=in.nextInt();
            }
        }
        System.out.println(sum);
    }
}
发表于 2025-04-18 11:33:41 回复(0)

package main
import (
	"fmt"
)
func main() {
    var n, m int
    fmt.Scan(&n, &m) // 读取矩阵的行数和列数
    var sum int64 = 0 // 使用 int64 存储累加和,避免溢出
    for i := 0; i < n; i++ {
        for j := 0; j < m; j++ {
            var num int
            fmt.Scan(&num)       // 读取矩阵中的每个元素
            sum += int64(num)    // 将元素累加到总和中
        }
    }
    fmt.Println(sum) // 输出最终的累加和
}


发表于 2025-04-12 02:53:16 回复(0)
lines = readLines("stdin")

dimensions = strsplit(lines[1], " ")[[1]]
n = as.numeric(dimensions)[1]
m = as.numeric(dimensions)[2]

all = 0
for(i in 1:n){
elements = as.numeric( strsplit(lines[(i+1)], " ")[[1]] )
all = all + sum(elements)
}

result = format(all, scientific = FALSE)
cat(result)


发表于 2025-04-12 01:25:58 回复(0)
public class Program {
    public static void Main() {
        string line;
        long sum = 0 ;
        System.Console.ReadLine ();//行数和列数直接不要了
        while ((line = System.Console.ReadLine ()) !=
                null) { // 注意 while 处理多个 case
            string[] tokens = line.Split();
            foreach (string x in tokens) {
                sum += int.Parse(x);
            }
        }
        System.Console.WriteLine(sum);
    }
}
发表于 2025-04-06 14:03:03 回复(0)
import java.util.Scanner;

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

发表于 2025-04-05 12:38:27 回复(0)
#include <stdio.h>
int main() {
    int n, m;
    scanf("%d %d", &n, &m);
    int long long list[n][m];
    int long long sum = 0;
    for(int i=0; i<n; i++){
        for (int j=0; j<m; j++){
            scanf("%lld", &list[i][j]);
            sum = sum +list[i][j];
        }
    }
    printf("%lld", sum);
    return 0;
}
发表于 2025-03-17 16:42:57 回复(0)
#include <iostream>我感觉我思路没问题啊
using namespace std;

int main() {
    int n,m,num1,num2,sum1,sum2,sum;
 cin>>n>>m;
 for(int i=0;i<n;i++){
    cin>>num1;
    sum1+=num1;
    for(int j=0;j<m;j++){
    cin>>num2;
    sum2+=num2;
    }
    sum=sum1+sum2;
    cout<<sum<<endl;
 }
 return 0;
}
发表于 2025-03-15 21:06:09 回复(0)
import sys

a,b = map(int,input().split(' '))
s = 0
for i in range(a):
    s+=sum(list(map(int,input().split(' '))))
print(s)
发表于 2025-03-11 09:16:20 回复(0)
#include <iostream>
#include <vector>
using namespace std;

int main() {
    long long n,m;
    cin>>n>>m;
    vector<vector<long long>> a(n,vector<long long>(m,0));
    for(long long i=0;i<n;i++){
        for(long long j=0;j<m;j++){
            cin>>a[i][j];
        }
    }
    long long count=0;
    for(long long i=0;i<n;i++){
        for(long long j=0;j<m;j++){
            count+=a[i][j];
        }
    }
    cout<<count<<endl;
    return 0;
}
// 64 位输出请用 printf("%lld")

发表于 2025-03-08 10:46:29 回复(0)
#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;
    long sum = 0;
    int c;
    for (int i=0;i<a;i++) {
        for (int j=0;j<b;j++) {
            cin >> c;
            sum +=c;
        }
    }
     cout << sum<< endl;
   
}
发表于 2025-02-12 14:33:37 回复(0)
n,m = map(int, input().strip().split())

res = 0
for i in range(n):
    temp_list = list(map(int, input().strip().split()))
    res += sum(temp_list)

print(res)
发表于 2025-02-11 15:21:26 回复(0)
C语言简单代码,注意不要弄混设的变量
#include <stdio.h>
int main() {
    int a, b;
    scanf("%d%d",&a,&b);
    int  n[a][b];
    long  long  sum=0;
    for (int i=0;i<a;i++)
    {
        for (int  j=0;j<b;j++)
        {
            scanf("%d",&n[i][j]);
            sum+=n[i][j];
        }
    }
    printf("%lld\n",sum);
    return 0;
}

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

int main() {
    int a, b;
    long long t,num =0;
    scanf("%d %d",&a,&b);
    for(int i = 0;i<a;i++){
        for(int j = 0;j<b;j++){
            scanf("%lld",&t);
            num += t;
        }
    }
    printf("%lld",num);
}
发表于 2025-01-18 10:57:37 回复(0)