Cod sursa(job #1628598)

Utilizator qwertyuiTudor-Stefan Berbinschi qwertyui Data 4 martie 2016 09:27:29
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <climits>

using namespace std;

ifstream fin ("flip.in");
ofstream fout ("flip.out");

#define DMAX 20

long long A[DMAX][DMAX];
int N, M;

int main()
{
    fin >>N >>M;

    for (int i = 0; i < N; ++i)
		for (int j = 0; j < M; ++j)
			fin >>A[i][j];

	long long solution = -INT_MAX;

    for (int i = 0; i < (1<<M); ++i)
	{
        long long sum = 0;
        for (int j = 0; j < N; ++j)
		{
			long long t = 0;
			for (int k = 0; k < M; ++k)
				if (i & (1<<k))
					t+= -A[j][k];
				else
					t+= A[j][k];

			sum += (t < -t) ? (-t) : (t);
		}

		solution = max(solution, sum);

	}

	fout <<solution <<'\n';

    return 0;
}