Pagini recente » Cod sursa (job #251317) | Cod sursa (job #1002598) | Cod sursa (job #2830464) | Cod sursa (job #1145419) | Cod sursa (job #2519808)
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
void comuta(int n,int m,int v[][17], int l, int c)
{
if (l != 0)
for (int i = 1; i <= m; i++)
v[l][i] *= -1;
else
for (int i = 1; i <= n; i++)
v[i][c] *= -1;
}
int suma(int n, int m, int v[][17])
{
int s = 0;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++)
s += v[i][j];
return s;
}
int main()
{
int n, m, v[17][17];
fin >> n >> m;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++)
fin >> v[i][j];
int smax = suma(n, m, v);
for (int i = 1; i <= n; i++)
{
comuta(n, m, v, i, 0);
if (smax < suma(n, m, v))
smax = suma(n, m, v);
else
comuta(n, m, v, i, 0);
}
for (int j = 1; j <= m; j++)
{
comuta(n, m, v, 0, j);
if (smax < suma(n, m, v))
smax = suma(n, m, v);
else
comuta(n, m, v, 0, j);
}
fout << smax;
fin.close();
fout.close();
return 0;
}