259
Cerința
Se dau două matrice cu elemente numere întregi. Calculați diferența dintre prima și a doua matrice.
Date de intrare
Fișierul de intrare mdiferenta.in conține pe prima linie numerele n m, reprezentând dimensiunile primei matrice. Urmează n linii cu câte m valori, elementele primei matrice.
Linia n+2 conține numerele p q, reprezentând dimensiunile celei de-a doua matrice. Urmează p linii cu câte q valori, elementele celei de-a doua matrice.
Date de ieșire
Fișierul de ieșire mdiferenta.out va conține pe prima linie numerele S T, reprezentând dimensiunile matricei diferență. Următoarele S linii vor conține câte T valori separate prin exact un spațiu, reprezentând valorile din matricea diferență.
Restricții și precizări
1 ≤ n , m , p , q ≤ 100;- valoarea absolută a elementelor fiecărei matrice vor fi mai mici decât
1.000.000.000; - scăderea matricelor se poate efectua pentru fiecare test.
Exemplu
mdiferenta.in
3 4 2 1 4 6 5 -8 5 5 2 5 -2 4 3 4 3 7 -5 0 1 -4 1 5 -4 2 8 7
mdiferenta.out
3 4 -1 -6 9 6 4 -4 4 0 6 3 -10 -3
#include <bits/stdc++.h>
using namespace std;
ifstream fin("mdiferenta.in");
ofstream fout("mdiferenta.out");
int a[101][101] , b[101][101] , c[101][101];
int main()
{
int n , m , p , q , max1 = 0 , max2 = 0;
fin >> n >> m;
for(int i = 1 ; i <= n ; i++)
for(int j = 1 ; j <= m ; j++)
fin >> a[i][j];
fin >> p >> q;
for(int i = 1 ; i <= p ; i++)
for(int j = 1 ; j <= q ; j++)
fin >> b[i][j];
if(n > p) max1 = n;
else max1 = p;
if(m > q) max2 = m;
else max2 = q;
for(int i = 1 ; i <= max1 ; i++)
for(int j = 1 ; j <= max2 ; j++)
c[i][j] = a[i][j] - b[i][j];
fout << max1 << " " << max2 << endl;
for(int i = 1 ; i <= max1 ; i++)
{
for(int j = 1 ; j <= max2 ; j++)
fout << c[i][j] << " ";
fout << endl;
}
return 0;
}
Comentarii