Pagini recente » Cod sursa (job #11669) | Cod sursa (job #418271) | Cod sursa (job #343357) | Cod sursa (job #2205612) | Cod sursa (job #346917)
Cod sursa(job #346917)
#include <stdio.h>
#include <stdlib.h>
int m,n,x[16];
long max=-2147483648,mat[16][16];
int back(int k)
{
int i,j;
long s=0,l;
if (k<m)
{
x[k]=1;
back(k+1);
x[k]=-x[k];
back(k+1);
}
else if (k==m)
{
s=0;
for (i=0;i<n;i++)
{
l=0;
for(j=0;j<m;j++)
l+=mat[i][j]*x[j];
s+=abs(l);
}
if (s>max)
max=s;
}
return 0;
}
int main()
{
int i,j;
FILE *f;
f=fopen("flip.in","r");
fscanf(f,"%d",&n);
fscanf(f,"%d",&m);
for (i=0;i<n;i++)
for (j=0;j<m;j++)
fscanf(f,"%ld",&mat[i][j]);
fclose(f);
back(0);
f=fopen("flip.out","w");
fprintf(f,"%ld",max);
fclose(f);
return 0;
}