Pagini recente » Cod sursa (job #5606) | Borderou de evaluare (job #1004089) | Cod sursa (job #114368) | Cod sursa (job #1564642) | Cod sursa (job #1956193)
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
long long int n, m, v[20][20], S;
int main()
{
f >> n >> m;
for (int i=1; i<=n; i++)
for (int j=1; j<=m; j++)
f >> v[i][j];
for (int i=1; i<=n; i++)
{
S = 0;
for (int j=1 ;j<=m ;j++)
S += v[i][j];
v[i][0] = S;
}
for (int j=1 ;j<=m ;j++)
{
S = 0;
for (int i=1 ;i<=n ;i++)
S += v[i][j];
v[0][j] = S;
}
int ok = 1;
while (ok == 1)
{
ok = 0;
for (int i=1; i<=n; i++)
if (v[i][0] < 0)
{
v[i][0] = -v[i][0];
for (int j=1; j<m; j++)
{
v[0][j] -= (2*v[i][j]);
v[i][j] = -v[i][j];
}
ok = 1;
}
for (int j=1; j<=m; j++)
if (v[0][j] < 0)
{
v[0][j] = -v[0][j];
for (int i=1; i<=n; i++)
{
v[i][0] -= (2*v[i][j]);
v[i][j] = -v[i][j];
}
}
}
S = 0;
for (int i=1; i<=n; i++)
S += v[i][0];
g << S;
return 0;
}