Cod sursa(job #1289057)

Utilizator redducks100Andronache Simone redducks100 Data 9 decembrie 2014 13:50:01
Problema Jocul Flip Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("flip.in");
ofstream g("flip.out");
#define NMAX 16

long a[NMAX][NMAX];
int ls[NMAX];
long m,n,smax;

void bkt(int k)
{
    int i,j,s,sl;
    if(k==m)
    {
        s=0;
        for(i=1;i<=m;i++)
        {
            for(sl=0,j=1;j<=n;j++)
            {
                if(ls[j])
                    sl+=-a[i][j];
                else
                    sl+=a[i][j];
            }
            s+=sl<-sl ? -sl:sl;
        }
        if(smax<s)
            smax=s;
        return;
    }
    ls[k]=0;
    bkt(k+1);
    ls[k]=1;
    bkt(k+1);
}

int main()
{
    int i,j;
    f>>m>>n;
    for(i=1;i<=m;i++)
        for(j=1;j<=n;j++)
            f>>a[i][j];
    bkt(0);
    g<<smax<<"\n";
    return 0;
}