Pagini recente » Cod sursa (job #772266) | Cod sursa (job #359593) | Cod sursa (job #2124214) | Cod sursa (job #1644403) | Cod sursa (job #563595)
Cod sursa(job #563595)
#include <stdio.h>
int max=-9999999,n,m,a[20][20];
int global[21];
int d[2]={-1,1};
void back(int nivel);
void calc();
int main()
{
FILE *in,*out;
in=fopen("flip.in","rt");
out=fopen("flip.out","wt");
fscanf(in,"%d%d",&n,&m);
int i1,i2;
for(i1=0;i1<n;i1++)
for(i2=0;i2<m;i2++)
fscanf(in,"%d",&a[i1][i2]);
back(1);
fprintf(out,"%d",max);
fclose(in);
fclose(out);
return 0;
}
void back(int nivel)
{
int i1;
for(i1=0;i1<2;i1++)
{
global[nivel]=d[i1];
if(nivel==n)
calc();
else
back(nivel+1);
}
}
void calc()
{
int i1,i2,s,total=0;
for(i1=0;i1<n;i1++)
{
s=0;
for(i2=0;i2<m;i2++)
s+=(a[i1][i2]*global[i2+1]);
if(s<0)
s*=(-1);
total+=s;
}
if(max<total)
{
max=total;
}
}