Cod sursa(job #3334428)

Utilizator horatiu.avramAvram Popa Cristian Horatiu horatiu.avram Data 17 ianuarie 2026 15:42:57
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <iostream>
#include <bits/stdc++.h>

using namespace std;

const int MAXN=16;

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

int a[MAXN+1][MAXN+1];

int main() {
    int n,m;
    fin>>n>>m;

    for(int i=0; i<n; i++) {
        for(int j=0; j<m; j++) {
            fin>>a[i][j];
        }
    }

    int maxm=(1<<n);
    int ans=0;

    for(int mask=0; mask<maxm; mask++) {
        for(int i=0; i<n; i++) {
            if(mask&(1<<i)) {
                for(int j=0; j<m; j++) {
                    a[i][j]=-a[i][j];
                }
            }
        }

        int sum = 0;
        for(int i=0; i<m; i++) {
            int col=0;
            for(int j=0; j<n; j++) {
                col+=a[j][i];
            }
            sum+=abs(col);
        }

        for(int j=0; j<n; j++) {
            if(mask&(1<<j)) {
                for(int k=0; k<m; ++k) {
                    a[j][k]=-a[j][k];
                }
            }
        }
        ans=max(ans,sum);
    }
    fout<<ans<<'\n';

    return 0;
}