Cod sursa(job #2511554)

Utilizator razvan888razvan mandu razvan888 Data 19 decembrie 2019 12:09:02
Problema Jocul Flip Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.59 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream fin ("flip.in");
ofstream fout ("flip.out");

int main()
{

     unsigned char 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);
                }
            }
    }

    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;
}