十字爆破
题号:NC205836
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

牛牛在玩一个游戏:
一共有n行m列共n*m个方格,每个方格中有一个整数。
牛牛选择一个方格,可以得到和这个方格同行、同列的所有数之和的得分。
例如:对于一个2*2的方格:
1 2
3 4
牛牛选择每个方格的得分如下:
6 7
8 9
因为1+2+3=6,1+2+4=7,1+3+4=8,2+3+4=9。
现在牛牛想知道下一步选择每个格子的得分情况,你可以帮帮他吗?

输入描述:

第一行有两个正整数  ,代表方格的行数和列数。 
接下来的 行,每行有 个数 ,代表每个方格中的整数。

输出描述:

输出  列整数,分别代表选择每个位置方格的得分情况。
示例1

输入

复制
2 2
1 2
3 4

输出

复制
6 7
8 9

备注:

本题输入和输出数据量较大,尽量使用scanf或更快的IO方式~