Cod sursa(job #1555664)

Utilizator mirupetPetcan Miruna mirupet Data 23 decembrie 2015 13:07:47
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include<cstdio>
#define Maxim(x, y) (x <= y ? y : x)
#define ABS(x) ( x < 0 ? (-x) : x)
#define DIM 17
using namespace std;

int N, M, i, j, k, sol, S, sum;
int v[DIM][DIM];

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", &v[i][j]);

        for (k = 1; k < (1 << M); k++)
        {
            S = 0;
            for (i = 1; i <= N; i++)
            {
                sum = 0;
                for (j = 0; j < M; j++)
                    if (k & (1 << j))
                        sum -= v[i][j + 1];
                    else
                        sum += v[i][j + 1];
                S += ABS(sum);
            }
            sol = Maxim(sol, S);
        }

        printf("%d", sol);
    }