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