Cod sursa(job #1329329)

Utilizator IordachescuAncaFMI Iordachescu Anca Mihaela IordachescuAnca Data 29 ianuarie 2015 13:32:25
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.16 kb
#include<fstream>
using namespace std;
int n,m,a[17][17],i,j,s[17],ss[17],p,t,smax,x,k;
ifstream fin("flip.in");
ofstream fout("flip.out");

int main()
{
    fin>>n>>m;
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=m;j++)
        {
            fin>>a[i][j];
        }
        s[i]=0;
    }
    for(j=1;j<=m;j++)
    {
       for(i=1;i<=n;i++)
       {
           s[i]=s[i]+a[i][j];
       }
    }
    p=1;
    for(i=1;i<=m;i++)
    {
        p=p*2;
    }
    smax=-2000000000;
    for(i=0;i<=p-1;i++)
    {
        for(k=1;k<=n;k++)
        {
            ss[k]=s[k];
        }
        x=i;
        for(j=1;j<=m;j++)
        {
            if(x%2==1)
            {
                for(k=1;k<=n;k++)
                {
                    ss[k]=ss[k]-a[k][j]*2;
                }
            }
            x=x/2;
        }
        t=0;
        for(k=1;k<=n;k++)
        {
            if(ss[k]<0)
            {
                ss[k]=-ss[k];
            }
            t=t+ss[k];
        }
        if(t>smax)
        {
            smax=t;
        }
    }
    fout<<smax;
    fin.close();
    fout.close();
    return 0;
}