Pagini recente » Cod sursa (job #163107) | Cod sursa (job #957818) | Cod sursa (job #2151207) | Cod sursa (job #2371966) | Cod sursa (job #675702)
Cod sursa(job #675702)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int a[16][16], b[16][16];
int v[32];
int n,m,S=0;
void suma();
void citire ()
{
int i,j;
f >> n >> m;
for (i=0; i<n; i++)
for (j=0; j<m; j++)
f >> a[i][j];
}
void amplific ()
{
int i, j;
for (i=0; i<n; i++)
for (j=0; j<m; j++)
b[i][j]=a[i][j];
for (i=0; i<n; i++)
if (v[i]==1)
for (j=0; j<m; j++) b[i][j]*=-1;
for (j=0; j<m; j++)
if (v[n+j]==1)
for (i=0; i<n; i++) b[i][j]*=-1;
suma();
}
void bin (int p)
{
if (p==n*m)
{
amplific();
return;
}
v[p] = 0;
bin(p+1);
v[p] = 1;
bin(p+1);
}
void suma ()
{
int i, j, s=0;
for (i=0; i<n; i++)
for (j=0; j<m; j++)
s+=b[i][j];
if (s>S) S=s;
}
int main ()
{
citire();
bin(0);
g << S;
}