[HPUVJ - 矩陣練習] A - 矩陣A+B

Link:點擊打開鏈接


A - 矩陣A+B
Time Limit:1000MS     Memory Limit:131072KB     64bit IO Format:%lld & %llu

Description

在數學中,矩陣是一個按照長方陣列排列的複數或實數集合,最早來自於方程組的係數及常數所構成的方陣。這一概念由19世紀英國數學家凱利首先提出。

矩陣是高等代數學中的常見工具,也常見於統計分析等應用數學學科中。在物理學中,矩陣於電路學、力學、光學和量子物理中都有應用;計算機科學中,三維動畫製作也需要用到矩陣。 矩陣的運算是數值分析領域的重要問題。將矩陣分解爲簡單矩陣的組合可以在理論和實際應用上簡化矩陣的運算。對一些應用廣泛而形式特殊的矩陣,例如稀疏矩陣和準對角矩陣,有特定的快速運算算法。

作爲A+B問題,我們在此掌握矩陣的加法運算:

$$ \left( \begin{matrix} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33} \end{matrix}\right) + \left( \begin{matrix} b_{11} & b_{12} & b_{13} \\ b_{21} & b_{22} & b_{23} \\ b_{31} & b_{32} & b_{33} \end{matrix}\right) = \left( \begin{matrix} a_{11} + b_{11} & a_{12}+ b_{12} & a_{13}+ b_{13} \\ a_{21}+ b_{21} & a_{22}+ b_{22} & a_{23}+ b_{23} \\ a_{31}+ b_{31} & a_{32}+ b_{32} & a_{33}+ b_{33} \end{matrix}\right)$$

上式就表示兩個3*3矩陣的加法,聰明的你應該想到n*m的矩陣運算法則:兩個n*m矩陣AB的和,一樣是個n*m矩陣,其內的各元素爲其相對應元素相加後的值。

現在給你兩個矩陣AB,請你輸出得到的A+B結果矩陣。

Input

第一行是兩個數nm,表示給出兩個nm列的矩陣。

下面n行描述矩陣A,再下面n行描述矩陣B

詳細格式請參考樣例。

1 ≤ n ≤ 50

1 ≤ m ≤ 50

0 ≤ |aij| ≤ 105

0 ≤ |bij| ≤ 105

Output

請輸出n行數描述矩陣A+B

每行的m個數用一個空格分隔開,行末不需要空格。

Sample Input

2 3
1 2 3
3 4 5
1 1 0
1 2 0 

Sample Output

2 3 3
4 6 5 

Hint


請嚴格按照格式輸出,不要輸出多餘空格。



Code:

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<iostream>
#include<queue>
#include<stack>
using namespace std;
int main()
{
	int n,m;
	int a[55][55],b[55][55],c[55][55];
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
			scanf("%d",&a[i][j]);
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
		{
			scanf("%d",&b[i][j]);
			c[i][j]=a[i][j]+b[i][j];
		}
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
			printf("%d%c",c[i][j],j==m? '\n':' ');
return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章