Cod sursa(job #2765509)

Utilizator lusuzavelca silviu lusu Data 27 iulie 2021 14:56:54
Problema Jocul Flip Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.89 kb
#define _CRT_SECURE_NO_WARNINGS
#include<fstream>
#include<array>

using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int main()
{
	int n, m, a[16][16],suma=0,sumaMaxima=0;
	array<int, 32>v;
	v.fill(-1);
	f >> n >> m;
	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < m; j++)
			f >> a[i][j];
	}
	while (true)
	{
		int i = n + m - 1;
		while (i >= 0)
		{
			if (v[i] == 1)
				v[i] = -1;
			else
				if (v[i] == -1)
				{
					v[i] = 1;
					break;
			}
			i--;
		}
		suma = 0;
		for (int i = 0; i < n; i++)
		{
			for (int j = 0; j < m; j++)
			{
				if (v[i] * v[n + j] > 0)
					suma += a[i][j];
				else
					suma -= a[i][j];
			}
		}
		if (suma > sumaMaxima)
			sumaMaxima = suma;
		int q = 0;
		for(i=n+m-1;i>=0;i--)
			if (v[i] == 1)
			{
				q = 1;
				break;
			}
		if (q == 0)
			break;
	}
	g << sumaMaxima << "\n";
}