Cod sursa(job #858898)

Utilizator RaduDoStochitoiu Radu RaduDo Data 19 ianuarie 2013 14:59:54
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int sum,i,j,n,m,a[17][17],sign[17];
void solve()
{
    int i,j,s=0;
    int col[17];
    memset(col,0,sizeof(col));
    for(j=1;j<=m;++j)
        for(i=1;i<=n;++i)
            col[j]+=a[i][j]*sign[i];
    for(i=1;i<=m;++i)
        s+=abs(col[i]);
    if(s>sum)
        sum=s;
}

void back(int k)
{
    if(k==n+1) solve();
    else
    {
        sign[k]=1;
        back(k+1);
        sign[k]=-1;
        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",sum);
    return 0;
}