用 Python 编写程序,查找行和列为行和列总和的矩阵
pythonserver side programmingprogramming更新于 2025/12/18 11:24:17
假设我们有一个给定的矩阵,我们必须找到一个新的矩阵 res,其维度与给定矩阵相同,其中 res[i, j] 中的每个元素 = matrix[r, c] 中每个元素的总和,其中 r ≤ i,c ≤ j.
因此,如果输入如下
| 8 | 2 |
| 7 | 4 |
则输出将是
| 8 | 10 |
| 15 | 21 |
要解决此问题,我们将遵循以下步骤 −
如果矩阵为空,则
返回矩阵
R := 行数矩阵
C := 矩阵的列数
对于 r 在 1 到 R - 1 范围内,执行
对于 c 在 0 到 C - 1 范围内,执行
矩阵[r, c] := 矩阵[r, c] + 矩阵[r - 1, c]
对于 r 在 0 到 R - 1 范围内,执行
对于 c 在 1 到 C - 1 范围内,执行
矩阵[r, c] := 矩阵[r, c] + 矩阵[r, c - 1]
返回矩阵
示例
让我们看看下面的实现以便更好地理解
def solve(matrix): if not matrix: return matrix R, C = len(matrix), len(matrix[0]) for r in range(1, R): for c in range(C): matrix[r][c] += matrix[r - 1][c] for r in range(R): for c in range(1, C): matrix[r][c] += matrix[r][c - 1] return matrix matrix = [ [8, 2], [7, 4] ] print(solve(matrix))
输入
[[8, 2],[7, 4]]
输出
[[8, 10], [15, 21]]
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

