Pagini recente » Cod sursa (job #2540075) | Cod sursa (job #1494624) | Cod sursa (job #2909532) | Cod sursa (job #217115) | Cod sursa (job #1729651)
#include <stdio.h>
#include <stdlib.h>
int a[17][17];
int s[17];
int maxim;
void cont(int n,int m)
{
int i,j,sl,st=0;
for(i=1;i<=m;i++)
{
sl=0;
for(j=1;j<=n;j++)
sl+=s[j]*a[j][i];
if(sl<0)
sl=-sl;
st+=sl;
}
if(st>maxim)
maxim=st;
}
void back1(int n,int m,int k)
{
if (k>n)
cont(n,m);
else
{
s[k]=1;
back1(n,m,k+1);
s[k]=-1;
back1(n,m,k+1);
}
}
int main()
{
FILE *pf,*pg;
pf=fopen("flip.in","r");
pg=fopen("flip.out","w");
int m,n;
fscanf(pf,"%d %d",&n,&m);
int i,j;
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
fscanf(pf,"%d ",&a[i][j]);
back1(n,m,1);
fprintf(pg,"%d",maxim);
return 0;
}