Cod sursa(job #2521672)

Utilizator As932Stanciu Andreea As932 Data 11 ianuarie 2020 12:22:50
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <iostream>
#include <algorithm>
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n,m;
int joc[17][17];
long long sumMax=0;
int solN[17];

void veziSum()
{
     int sum=0,s;
    for(int j=1;j<=m;j++)
    {
        s=0;
        for(int i=1;i<=n;i++)
        {
            int el=joc[i][j];
            if(solN[i]==1)
                el*=-1;
            s+=el;
        }
        sum+=abs(s);
    }

    if(sum>sumMax)
        sumMax=sum;
}

void backtrN(int pas)
{
    for(int i=0;i<=1;i++)
    {
        solN[pas]=i;
        if(pas==n)
            veziSum();
        else
            backtrN(pas+1);
    }
}

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

    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++)
            fin>>joc[i][j];

    backtrN(1);
    fout<<sumMax;

    return 0;
}