Cod sursa(job #2816347)

Utilizator Andrei_ierdnANeculau Rares-Andrei Andrei_ierdnA Data 11 decembrie 2021 11:50:54
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.05 kb
#include <fstream>

using namespace std;

ifstream f("flip.in");
ofstream g("flip.out");

int n, m, i, j, stot, s, sol = -1000000000;
int tabla[20][20];
int tabla2[20][20];
int lineflip;

int main()
{
    f >> n >> m;
    for (i = 1; i <= n; i++)
        for (j = 1; j <= m; j++)
            f >> tabla[i][j];
    for (lineflip = 0; lineflip < (1 << n); lineflip++) {
        for (i = 0; i < n; i++) {
            if ((lineflip & (1 << i))) {
                for (j = 1; j <= m; j++)
                    tabla2[i+1][j] = -tabla[i+1][j];
            }
            else {
                for (j = 1; j <= m; j++)
                    tabla2[i+1][j] = tabla[i+1][j];
            }
        }
        stot = 0;
        for (j = 1; j <= m; j++) {
            s = 0;
            for (i = 1; i <= n; i++)
                s += tabla2[i][j];
            if (s < 0)
                s = -s;
            stot += s;
        }
        if (stot > sol)
            sol = stot;
    }
    g << sol;
    f.close();
    g.close();
    return 0;
}