Cod sursa(job #2519637)

Utilizator cdenisCovei Denis cdenis Data 8 ianuarie 2020 03:39:59
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <bits/stdc++.h>

using namespace std;

#define MAX 20

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

int n,m,mat[MAX][MAX],f[MAX],mem;

void solve()
{
    int sum,s=0;
    for(int i=1;i<=n;i++)
    {
        sum=0;
        for(int j=1;j<=m;j++)
            sum+=f[j]*mat[i][j];
        s+=(sum>=0 ? sum:-sum);
    }
    if(s>mem)
        mem=s;

}

int bck(int k)
{
    if(k>m)
        solve();
    else
    {
        f[k]=1;
        bck(k+1);
        f[k]=-1;
        bck(k+1);
    }
}

int main()
{
    fin >> n >> m;
    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++)
            fin >> mat[i][j];
    bck(1);
    fout << mem;
    return 0;
}