Cod sursa(job #2465568)

Utilizator YouDontNeedMyNameJurcut Paul YouDontNeedMyName Data 30 septembrie 2019 13:39:45
Problema Jocul Flip Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <bits/stdc++.h>

using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int n,m,v[20][20],l[20],c[20],ma;
int sum()
{
    int sum=0;
    for(int i=1; i<=n; i++)
        for(int j=1; j<=m; j++)
        {
            if((l[i]+c[j])%2)
                sum -= v[i][j];
            else
                sum += v[i][j];
        }
    return sum;
}
void read()
{
    in >> n >> m;
    for(int i=1; i<=n; i++)
    {
        for(int j=1; j<=m; j++)
        {
            in >> v[i][j];
        }
    }
}
void bac2(int poz)
{
    if(poz==m+1)
    {
        ma=max(ma,sum());
        return;
    }
    bac2(poz+1);
    c[poz]=1;
    bac2(poz+1);
    c[poz]=0;
}
void bac1(int poz)
{
    if(poz==n+1)
    {
        bac2(1);
        return;
    }
    bac1(poz+1);
    l[poz]=1;
    bac1(poz+1);
    l[poz]=0;
}
int main()
{
    read();
    bac1(1);
    out << ma;
    return 0;
}