Cod sursa(job #611424)

Utilizator PetcuIoanPetcu Ioan Vlad PetcuIoan Data 1 septembrie 2011 15:59:16
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include<stdio.h>
int m,n,a[20][20],a1[20][20];
int max(int x, int y)
{
    if(x>y)
        return x;
    return y;
}
void proc1(int i)
{
    int j;
    for(j=1;j<=m;j++)
        a1[i][j]=-a[i][j];
}
void proc2(int i)
{
    int j;
    for(j=1;j<=m;j++)
        a1[i][j]=a[i][j];
}
int main()
{
    freopen("Filip.in","r",stdin);
    freopen("Filip.out","w",stdout);
    int i,j,k,lim,s,sum,mx=0;
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            scanf("%d",&a[i][j]);
                lim=1<<n;
    for(i=0;i<lim;i++)
    {
        for(j=1,k=1;j<lim;j<<=1,k++)
            if(i&j)
                proc1(k);
            else
                proc2(k);
        sum=0;
        for(j=1;j<=m;j++)
        {
            s=0;
            for(k=1;k<=n;k++)
                s+=a1[k][j];
            sum+=max(s,-s);
        }
        if(sum>mx)
            mx=sum;
    }
    printf("%d",mx);
    return 0;
}