Cod sursa(job #1348741)

Utilizator tiberiumunteanMuntean Tiberiu tiberiumuntean Data 19 februarie 2015 20:47:09
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.02 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int s,sm,n,m,q,x,i,j,a[17][17],s1[17],s2[17],p,z;
int main()
{
    fin>>n>>m;
    for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
        fin>>a[i][j];
    x=(1<<n)-1;
    for(q=0;q<=x;q++)
    {
        s=0;
        p=q;
        z=0;
        for(j=1;j<=m;j++)
        {
            s1[j]=0;
            s2[j]=0;
        }
        while(p)
        {
            z++;
            if(p%2==1)
            for(j=1;j<=m;j++)
            {
                s1[j]=s1[j]+a[z][j];
                s2[j]=s2[j]+a[z][j]*(-1);
            }
            else
            for(j=1;j<=m;j++)
            {
                s1[j]=s1[j]+a[z][j]*(-1);
                s2[j]=s2[j]+a[z][j];
            }
            p=p/2;
        }
        for(j=1;j<=m;j++)
        if(s1[j]>s2[j])
            s=s+s1[j];
        else
            s=s+s2[j];
        if(s>sm)
            sm=s;
    }
    fout<<sm;
    return 0;
}