Pagini recente » Cod sursa (job #2699659) | Cod sursa (job #1168203) | Cod sursa (job #2779152) | Cod sursa (job #743510) | Cod sursa (job #2446329)
//
// main.cpp
// Alex
//
// Created by Hurjui Alexandru Mihai on 02/11/2018.
// Copyright © 2019 Hurjui Alexandru Mihai. All rights reserved.
//
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int main()
{
int a[17][17], n, m, smin, s;
int minl[17], minc[17];
fin >> n >> m;
int i, j;
for (i = 1; i<=n; i++)
for (j = 1; j<=m; j++)
fin >> a[i][j];
do
{
smin = 0;
minl[0] = 0;
minc[0] = 0;
for (i = 1; i<=n; i++)
{
s = 0;
for (j = 1; j<=m; j++)
s = s + a[i][j];
if (s < smin)
{
smin = s;
minl[0] = 1;
minl[1] = i;
}
else if (s == smin)
{
minl[0]++;
minl[minl[0]] = i;
}
else;
}
for (i = 1; i<=m; i++)
{
s = 0;
for (j = 1; j<=n; j++)
s = s + a[j][i];
if (s < smin)
{
smin = s;
minl[0] = 0;
minc[0] = 1;
minc[1] = i;
}
else if (s == smin)
{
minc[0]++;
minc[minc[0]] = i;
}
else;
}
for (i = 1; i<=minl[0]; i++)
for (j = 1; j<=m; j++)
a[minl[i]][j] = (-1)*a[minl[i]][j];
for (i = 1; i<=minc[0]; i++)
for (j = 1; j<=n; j++)
a[j][minc[i]] = (-1)*a[j][minc[i]];
} while (smin < 0);
s = 0;
for (i = 1; i<=n; i++)
for (j = 1; j<=m; j++)
s = s + a[i][j];
fout << s;
return 0;
}