Cod sursa(job #1750871)

Utilizator giotoPopescu Ioan gioto Data 31 august 2016 12:59:14
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <cstdio>
#define max(a,b) (a>b)?a:b
using namespace std;

int maxim=-2000000000,n,m,v[20],a[20][20];
void back(int k1){
    if(k1==m+1){int sum=0;
        for(int i=1;i<=n;++i){
            int sum1=0;
            for(int j=1;j<=m;++j)
                if(v[j]==0) sum1+=a[i][j];
                       else sum1-=a[i][j];
            if(sum1<0) sum1*=(-1);
            sum+=sum1;
        }
        maxim=max(maxim,sum);
        return ;
    }
    v[k1]=0;back(k1+1);
    v[k1]=1;back(k1+1);

}
int main()
{
    freopen("flip.in", "r", stdin);
    freopen("flip.out", "w", stdout);
    scanf("%d%d", &n, &m);
    for(int i=1;i<=n;++i)
        for(int j=1;j<=m;++j)
            scanf("%d", &a[i][j]);
    back(1);
    printf("%d", maxim);
    return 0;
}