Cod sursa(job #1117728)

Utilizator lorundlorund lorund Data 23 februarie 2014 19:18:58
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <cstdio>

int N, M;
int a[20][20];
int maxsum;

int main()
{
    freopen("flip.in", "r", stdin);
    freopen("flip.out", "w", stdout);

    scanf("%d %d", &N, &M);
    for (int i=0; i<N; ++i){
        for (int j=0; j<M; ++j){
            scanf("%d", &a[i][j]);
            maxsum += a[i][j];
        }
    }
    for (int c=0; c<1<<M; ++c){
        int sum = 0;

        for (int i=0; i<N; ++i){
            int lnsum = 0;
            for (int j=0; j<M; ++j){
                lnsum += c&1<<j ? a[i][j] : -a[i][j];
            }
            sum += lnsum>0 ? lnsum : -lnsum;
        }
        maxsum = maxsum>sum ? maxsum : sum;
    }
    printf("%d", maxsum);
    return 0;
}