AOJ 表計算プログラム

表計算はExcelを使えばあっという間に処理できますが、ここでの目的は計算結果を求めることではなく、正しい計算を求めるためのアルゴリズムを作ることです。

■問題
Structured Program II – Spreadsheet

■プログラム
配列(リスト)の使い方を理解できていれば、そんなに難しくありません。

import sys

def main():
    row, col = sys.stdin.readline().strip().split(' ')
    row = int(row)
    col = int(col)

    row_sums = []
    for _ in range(row):
        row_sums.append(0)

    col_sums = []
    for i in range(col):
        col_sums.append(0)
        
    for i in range(row):
        line = sys.stdin.readline().strip()
        data = [int(i) for i in line.split(' ')]

        for j in range(col):
            row_sums[i] += data[j]
            col_sums[j] += data[j]
            
        print(line, row_sums[i])

    sum = 0
    for i in range(col):
        print('{} '.format(col_sums[i]), end='')
        sum += col_sums[i]
        
    print(sum)
    
if __name__ == '__main__':
    main()
Pythonプログラミング物語 © 2016 Frontier Theme