Cod sursa(job #2553263)

Utilizator polisulMarian Anghel polisul Data 21 februarie 2020 19:54:55
Problema Jocul Flip Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.19 kb
#include <iostream>
#include <fstream>
using namespace std;

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

int N, M, i, j, tabla[18][18]; 

void back(){

    int sumaOg, sumaNoua;
    for(int g = 1; g <= N + M; g++){
        sumaNoua = 0;
        sumaOg = 0;

        if(g <= M){ //coloane
            for(i = 1; i <= N; i++){
                sumaOg += tabla[i][g];
                sumaNoua = sumaNoua + tabla[i][g] * -1;
            }
        }
        else //linii
        {
               for(j = 1; j <= M; j++){
                sumaOg += tabla[g-M][j];
                sumaNoua = sumaNoua + tabla[g-M][j] * -1;
            }
            
        }

        if(sumaOg < sumaNoua)
            if(g <= M)  for(i = 1; i <= N; i++) tabla[i][g] *= -1;
            else for(j = 1; j <= M; j++) tabla[g-M][j] *= -1;

       
    }   
}


int main(){
    
    fin >> N >> M;
    
    //CITIRE TABLA
    for(i = 1; i <= N; i++)
        for(j = 1; j <= M; j++)
            fin >> tabla[i][j];
         
    back();
    int sum = 0;
    for(i = 1; i <= N; i++) 
        for(j = 1; j <= M; j++)
            sum += tabla[i][j];

    fout << sum;
   
    return 0;
}