酷代码 AI
菜单

题目描述 读入一个 的数字矩阵,输出数字矩阵左上角的数字之和。 如上图蓝色部分所示:副对角线数字上方的就是左上角数字。 输入 读入一个整数 , 不超过 。 接下来读入 行 列的数字矩阵。每个数字的范围在 ~ 之间。 输出 输出数字矩阵的左上角之和。 样例输入 复制 10 10 4 4 3 7 9 8 5 7 9 10 10 6 3 10 3 6 4 10 3 4 10 4 1 4 4 8 8 8 7 7 9 9 9 9 9 10 4 3 5 1 6 2 6 4 6 6 5 8 10 3 9 8 7 6 9 8 7 6 4 2 7 9 5 7 3 5 4 8 4 1 2 1 4 10 3 2 2 8 2 10 6 10 8 5 5 10 9 6 6 7 6 4 5 10 5 6 5 10 9 样例输出 复制 273

以下是使用Python解决该问题的代码: ```python # 读取矩阵的大小 n = int(input()) # 初始化矩阵和左上角数字之和 matrix = [] total = 0 # 读取矩阵的每一行 for _ in range(n): row = list(map(int, input().split())) matrix.append(row) # 遍历矩阵,计算左上角数字之和 for i in range(n): for j in range(n): # 判断是否为左上角的数字(副对角线上方) if i + j < n - 1: total += matrix[i][j] # 输出左上角数字之和 print(total) ``` 代码解释 1. 读取矩阵的大小:使用`input()`函数读取一个整数`n`,表示矩阵的大小。 2. 初始化矩阵和左上角数字之和:创建一个空列表`matrix`来存储矩阵,初始化`total`为0,用于存储左上角数字之和。 3. 读取矩阵的每一行:使用`for`循环读取`n`行,每行使用`input().split()`将输入的字符串按空格分割成多个字符串,再使用`map(int, ...)`将这些字符串转换为整数,最后将这些整数存储在列表`row`中,并将`row`添加到`matrix`中。 4. 遍历矩阵,计算左上角数字之和:使用两层`for`循环遍历矩阵的每一个元素,对于每个元素`matrix[i][j]`,判断其是否在副对角线上方(即`i + j < n - 1`),如果是,则将该元素的值加到`total`中。 5. 输出左上角数字之和:使用`print(total)`输出左上角数字之和。 [2025-12-08 17:54:37 | AI问答 | 387点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多