Cod sursa(job #1535941)

Utilizator danstefanDamian Dan Stefan danstefan Data 25 noiembrie 2015 14:07:12
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <bits/stdc++.h>
using namespace std;
int m,n,i,j,k,su,a[20][20],calu[20][20],in,c,v[500],l,s,ma;
int main()
{
    freopen("flip.in","r",stdin);
    ofstream g ("flip.out");
    scanf("%d%d",&m,&n);
    for(i=1; i<=m; ++i)
        for(j=1; j<=n; ++j)
            scanf("%d",&a[i][j]);
    for(i=1; i<(1<<m); ++i)
    {
        su=0;
        k=0;
        for(j=0; j<m; ++j)
            if(i&(1<<j))v[++k]=j+1;
        for(l=1; l<=m; ++l)
            for(c=1; c<=n; ++c)
                calu[l][c]=a[l][c];
        for(in=1; in<=k; ++in)
        {
            l=v[in];
            for(c=1; c<=n; ++c)
                calu[l][c]=calu[l][c]*(-1);
        }
        for(c=1; c<=n; ++c)
        {
            s=0;
            for(l=1; l<=m; ++l)
                s+=calu[l][c];
            su+=abs(s);
        }
        if(ma<su)ma=su;
    }
    g<<ma;
    return 0;
}