ITP1_7_C: Spreadsheet
表計算 | プログラミング入門 | Aizu Online Judge
行列に関する問題
はじめに、r × c の表を作成します。
次に、各行の合計をappend()
を使用してmatrix
の各行の最後に結合し、 r × (c + 1) の表を作成します。
そして、各列の合計をzip()
を使用して、matrix
の最後に結合し、 (r + 1) × (c + 1) の表を作成します。
解答
r, c = map(int, input().split()) matrix = [list(map(int, input().split())) for _ in range(r)] for i in range(r): matrix[i].append(sum(matrix[i])) matrix.append(list(map(sum, zip(*matrix)))) # matrix.append([sum(i) for i in zip(*matrix)]) for row in matrix: print(' '.join(str(e) for e in row))