Pagini recente » Cod sursa (job #604522) | Cod sursa (job #347204) | Cod sursa (job #197327) | Cod sursa (job #278795) | Cod sursa (job #64500)
Cod sursa(job #64500)
#include <stdio.h>
int a[16][16], nl, nc, v;
long long SMax;
void read()
{
int i, j;
FILE *f=fopen ("flip.in", "r");
fscanf (f, "%d %d", &nl, &nc);
for (i=0; i<nl; ++i)
for (j=0; j<nc; ++j)
fscanf (f, "%d", &a[i][j]);
fclose(f);
}
void sol()
{
int i, j;
long long s, S;
for (i=0; i<nc; ++i)
if (v&(1<<i))
for (j=0; j<nl; ++j)
a[j][i]*=-1;
for (S=0, i=0; i<nl; ++i)
{for (s=0, j=0; j<nc; ++j)
s+=a[i][j];
if (s<0) s=-s;
S+=s;
}
for (i=0; i<nc; ++i)
if (v&(1<<i))
for (j=0; j<nl; ++j)
a[j][i]*=-1;
if (S>SMax) SMax=S;
}
int main()
{
read();
SMax=-256000001;
for (v=0; v<(1<<nc); ++v)
sol();
FILE *g=fopen ("flip.out", "w");
fprintf (g, "%lld\n", SMax);
fclose(g);
return 0;
}