Pagini recente » Cod sursa (job #1876876) | Cod sursa (job #884146) | Cod sursa (job #2749528) | Cod sursa (job #3277333) | Cod sursa (job #2511569)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("flip.in");
ofstream fout ("flip.out");
int main()
{
int N,M;
// fin.open ("flip.in.txt");
fin>>N>>M;
// fout<<N<<" "<<M<<endl;
int a[N][M];
//citesc matricea:
//=====================================
for (int i=0; i<=N-1; i++){
for (int j=0; j<=M-1; j++){
fin>>a[i][j];
}
}
//fac suma (S_linie) pt fiecare linie i si verific daca e mai mare sau mai mica decat 0
// daca e mai mica decat 0 o schimb, dar daca e mai mare decat 0 nu o schimb
for (int i =0; i<N; i++) {
int S_linie=0;
for (int j=0; j<M; j++){
S_linie=S_linie+a[i][j];
}
if (S_linie<0) {
for (int j =0; j<M; j++) {
a[i][j]=a[i][j]*(-1);
}
}
}
// fac suma (S_coloana) pt fiecare coloana j
for (int j=0; j<M; j++){
int S_coloana=0;
for (int i=0; i<N; i++){
S_coloana=S_coloana+ a[i][j];
}
if (S_coloana<0){
for (int i=0; i<N; i++){
a[i][j]= a[i][j] * (-1);
}
}
}
for (int i =0; i<N; i++) {
int S_linie=0;
for (int j=0; j<M; j++){
S_linie=S_linie+a[i][j];
}
if (S_linie<0) {
for (int j =0; j<M; j++) {
a[i][j]=a[i][j]*(-1);
}
}
}
// fac suma (S_coloana) pt fiecare coloana j
for (int j=0; j<M; j++){
int S_coloana=0;
for (int i=0; i<N; i++){
S_coloana=S_coloana+ a[i][j];
}
if (S_coloana<0){
for (int i=0; i<N; i++){
a[i][j]= a[i][j] * (-1);
}
}
}
//===========afisez matricea in fisier=============
/* for (int i=0; i<N; i++){
for (int j=0; j<M; j++){
fout<<a[i][j]<<" ";
}
fout<<endl;
} */
int S=0;
// fac suma pt toata matricea a, dupa ce am schimbat-o
for (int i =0; i<N; i++) {
for (int j=0; j<M; j++){
S=S+a[i][j];
}
}
fout<<S;
return 0;
}