Cod sursa(job #863748)

Utilizator cocosminCosmin Bogdan cocosmin Data 24 ianuarie 2013 00:23:35
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
// cocobo
#include <fstream>
#define M 20
using namespace std;
int main()
{
    ifstream fin("flip.in"); ofstream fout("flip.out");
    int m,n,i,j,k,a[M][M],s,sc[M],scol[M],lim,smax=0;
    fin>>m>>n;
    lim=(1<<m); for(j=0;j<n;j++) scol[j]=0;
    for (i=0;i<m;i++)
        for (j=0;j<n;j++)
            {fin>>a[i][j]; scol[j]+=a[i][j];}
    for (k=0;k<lim;k++)
        {
         s=0;
         for (j=0;j<n;j++) sc[j]=scol[j];
         for (i=0;i<m;i++)
            if (((k>>i)&1)!=0)
                for (j=0;j<n;j++) sc[j]-=2*a[i][j];
         for (j=0,s=0;j<n;j++)
            if (sc[j]>0) s+=sc[j]; else s-=sc[j];
         if (s>smax) smax=s;
        }
    fout<<smax<<"\n";
    return 0;
}