Pagini recente » Cod sursa (job #1712166) | Cod sursa (job #1210932) | Cod sursa (job #2421348) | Cod sursa (job #1430368) | Cod sursa (job #52569)
Cod sursa(job #52569)
using namespace std;
#include<stdio.h>
#define nmax 18
#define infinit 10000000
FILE *fin=fopen("flip.in","r"),
*fout=fopen("flip.out","w");
int a[nmax][nmax];
int main()
{
int n,m,i,j;
fscanf(fin,"%d%d\n",&n,&m);
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
fscanf(fin,"%d",&a[i][j]);
int x,sol,scol,sum;
sol = -infinit;
for (x=0; x<(1<<n); x++)
{
for (i=1; i<=n; i++)
if ((1<<(i-1))&x)
for (j=1; j<=m; j++)
a[i][j]=-a[i][j];
sum=0;
for (j=1; j<=m; j++)
{
scol=0;
for (i=1; i<=n; i++)
scol+=a[i][j];
if (scol>0) sum+=scol;
else sum-=scol;
}
if (sum>sol) sol=sum;
for (i=1; i<=n; i++)
if ((1<<(i-1))&x)
for (j=1; j<=m; j++)
a[i][j]=-a[i][j];
}
fprintf(fout,"%d",sol);
fclose(fin);
fclose(fout);
return 0;
}