Cod sursa(job #2427868)

Utilizator qfl1ck32Andrei qfl1ck32 Data 2 iunie 2019 16:30:33
Problema Jocul Flip Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.25 kb
#include <iostream>
#include <fstream>
#define DIMMAX 16
using namespace std;
void sumaPeTabla(int &sumaMax, int tabla[DIMMAX][DIMMAX], int N, int M)
{
    int i, j, suma = 0;
    for (i = 1; i <= N; i++)
        {
            for (j = 1; j <= M; j++)
                suma += tabla[i][j];
            if (suma > sumaMax)
                sumaMax = suma;
        }
    return;
}
void flipLinie(int tabla[DIMMAX][DIMMAX], int L, int C)
{
    int i;
    for (i = 1; i <= L; i++)
        tabla[i][C] *= -1;
    return;
}
void flipColoana(int tabla[DIMMAX][DIMMAX], int L, int C)
{
    int i;
    for (i = 1; i <= C; i++)
        tabla[L][i] *= -1;
    return;
}
int main()
{
    int tabla[DIMMAX][DIMMAX], N, M, i, j, k = 0, sumaMax = -1;
    ifstream fin("flip.in");
    ofstream fout("flip.out");
    fin>>N>>M;
    for (i = 1; i <= N; i++)
        for (j = 1; j <= M; j++)
            fin>>tabla[i][j];
    i = 1;
    while (i <= N)
    {
        j = 1;
        sumaPeTabla(sumaMax, tabla, N, M);
        flipLinie(tabla, i, j);
        while (j <= M)
        {
            flipColoana(tabla, i, j);
            sumaPeTabla(sumaMax, tabla, N, M);
            j++;
        }
        i++;
    }
    fout<<sumaMax;
    return 0;

}