Pagini recente » Cod sursa (job #1344625) | Cod sursa (job #1708444) | Cod sursa (job #2222844) | Cod sursa (job #1640208) | Cod sursa (job #1986546)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
long int n, m, a[20][20], s_in;
void citire()
{
f>>n>>m;
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
f>>a[i][j];
}
int suma()
{
long int s=0;
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
s=s+a[i][j];
return s;
}
void opus_l(int l)
{
for(int j=1; j<=m; j++)
a[l][j]=-a[l][j];
}
void opus_c(int c)
{
for(int i=1; i<=n; i++)
a[i][c]=-a[i][c];
}
void bk()
{
for(int i=1; i<=n; i++)
{
opus_l(i);
long int s=suma();
if(s>s_in)
{
s_in=s;
bk();
}
s=suma();
opus_c(i);
if(s>s_in)
{
s_in=s;
bk();
}
for(int j=1; j<=m; j++)
{
opus_c(j);
s=suma();
if(s>s_in)
{
s_in=s;
bk();
}
s=suma();
opus_l(j);
if(s>s_in)
{
s_in=s;
bk();
}
}
}
}
int main()
{
citire();
s_in=suma();
bk();
g<<s_in;
}