Cod sursa(job #579683)

Utilizator veleanduAlex Velea veleandu Data 12 aprilie 2011 13:09:37
Problema Jocul Flip Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include<fstream>
#include<iostream>
#include<cmath>
using namespace std;

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

long i,j,k;
long n,m;
long T[20][20];
long S[40];
long s,mx,se,ck;
long mod( long val)
{
    if(val <0 )
        return -val;
    else
        return val;
}
int main()
{
    in>>n>>m;
    for(i=1; i<=n; ++i)
        for(j=1; j<=m; ++j)
            in>>T[i][j];
    for(k=0; k<(1<<n); ++k)
    {
        s=0;
        for(i=1; i<=n; ++i)
            S[i]=0;
        ck=k;
        for(i=1; i<=n; ++i)
        {
            se=(ck%2)==1;
            for(j=1; j<=m; ++j)
            {
                if(se)
                    S[j]+=T[i][j]*(-1);
                else
                    S[j]+=T[i][j];
            }
            ck/=2;
        }
        for(j=1; j<=m; ++j)
            s+=mod(S[j]);
        if(s>mx)
            mx=s;
    }
    out<<mx;
    return 0;
}