Cod sursa(job #478837)

Utilizator Magnuscont cu nume gresit sau fals Magnus Data 20 august 2010 16:11:39
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <stdio.h>

int n,m,max,v[17][17];

int abs(int x)
{
    if (x>0) return x;
    else return -x;
}

void back(int t)
{
    int i,j,s,sf=0;
    if (t==n+1)
    {
        for (j=1;j<=m;j++)
        {
            s=0;
            for (i=1;i<=n;i++) s+=v[i][j];
            s=abs(s);
            sf+=abs(s);
        }
        if (sf>max) max=sf;
        return;
    }
    back(t+1);
    for (i=1;i<=m;i++) v[t][i]=-v[t][i];
    back(t+1);
    for (i=1;i<=m;i++) v[t][i]=-v[t][i];
}

int main()
{
    int i,j;
    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",&v[i][j]);
    back(1);
    printf("%d",max);
    return 0;
}