Pagini recente » Cod sursa (job #130278) | Cod sursa (job #2637417) | Cod sursa (job #2344121) | Cod sursa (job #1064217) | Cod sursa (job #3238294)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int v[16][16], n, m, i, j, maxi = 0;
int sumaa()
{
int s = 0;
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
s += v[i][j];
return s;
}
void modif(int i, int j)
{
for (int k = 0; k < n; k++)
if (k != i)
v[k][j] *= -1;
for (int k = 0; k < m; k++)
if (k != j)
v[i][k] *= -1;
}
void bkt(int i, int j)
{
if (i == n)
{
if (maxi < sumaa())
maxi = sumaa();
}
else
{
for (int k = 1; k <= 2; k++)
{
modif(i, j);
if (j == m - 1)
bkt(i + 1, 1);
else
bkt(i, j + 1);
}
}
}
int main()
{
fin >> n >> m;
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
fin >> v[i][j];
bkt(0, 0);
fout << maxi;
return 0;
}