首页 > 试题广场 >

单组_二维数组

[编程题]单组_二维数组
  • 热度指数: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
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)

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)