Cod sursa(job #589849)

Utilizator fricCalin Paul Alexandru fric Data 14 mai 2011 08:56:47
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<stdio.h>

int n, m, a[16][16], max=0;

void FlipIt(int h, int v, int* max)
{
	int sum=0;
	for (int i=0; i<n; i++)
	{
		int auxV = v;
		for (int j=0; j<m; j++)
		{
			sum+=((auxV%2^h%2)-0.5)*(-2)*a[i][j];
			auxV=auxV/2;
		}
		h=h/2;
	}
	if (sum>*max)
		*max=sum;
}

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]);

	for (int hor=0; hor<1<<n; hor++)
		for (int ver=0; ver<1<<m; ver++)
			FlipIt(hor, ver, &max);

	printf("%d", max);
	return 0;
}