Cod sursa(job #811790)

Utilizator Al3ks1002Alex Cociorva Al3ks1002 Data 12 noiembrie 2012 22:16:47
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<cstdio>
#include<algorithm>
using namespace std;
int n,m,i,j,a[20][20],summax=1<<31,B[20];
void back(int k)
{
    int i,j,s,sf;
    if(k==m+1)
    {
        sf=0;
        for(i=1;i<=n;i++)
        {
            s=0;
            for(j=1;j<=m;j++)
                if(B[j]) s-=a[i][j];
                else s+=a[i][j];
            if(s<0) sf-=s;
            else sf+=s;
            summax=max(summax,sf);
        }
    }
    else
    {
        for(i=0;i<=1;i++)
        {
            B[k]=i;
            back(k+1);
        }
    }
}
int main()
{
    freopen("flip.in","r",stdin);
    freopen("flip.out","w",stdout);
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++) scanf("%d",&a[i][j]);
    back(1);
    printf("%d\n",summax);
    return 0;
}