Pagini recente » Cod sursa (job #306104) | Cod sursa (job #1809601) | Cod sursa (job #2077027) | Cod sursa (job #2203634) | Cod sursa (job #80135)
Cod sursa(job #80135)
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream f;
f.open("flip.in");
int mx[16][16];
int m,n;
f>>m;
f>>n;
int smax=0;
for (int i=0; i<m; i++)
{
for (int j=0; j<n; j++)
{
f>>mx[i][j];
smax += mx[i][j];
}
}
int s, im, jm, si, sj, c=0;
while (c<2)
{
c++;
si=36000;
for (int i=0; i<m; i++)
{
s=0;
for (int j=0; j<n; j++)
{
s+=mx[i][j];
}
if (s<si)
{
si=s;
im=i;
}
}
sj=36000;
for (int j=0; j<n; j++)
{
s=0;
for (int i=0; i<m; i++)
{
s+=mx[i][j];
}
if (s<sj)
{
sj=s;
jm=j;
}
}
if (si<sj)
{
if (si<0)
{
s=smax;
for (int j=0; j<n; j++)
{
mx[im][j]*=-1;
s+=2*mx[im][j];
}
if (s>smax)
{
smax=s;
c=0;
}
}
else c=3;
}
else
{
if (sj<0)
{
s=smax;
for (int i=0; i<m; i++)
{
mx[i][jm]*=-1;
s+=2*mx[i][jm];
}
if (s>smax)
{
smax=s;
c=0;
}
}
else c=3;
}
}
ofstream g;
g.open("flip.out");
g<<smax;
g.close();
return 0;
}