Pagini recente » Cod sursa (job #736471) | Cod sursa (job #566057) | Cod sursa (job #1645305) | Cod sursa (job #2001697) | Cod sursa (job #1533733)
#include <stdio.h>
int n,m, lines[16], a[16][16], smax;
int abs(int n)
{
return (n>0)?n:-n;
}
void sum()
{
int sline, stotal=0;
for (int i=0; i<n; i++)
{
sline=0;
for (int j=0; j<m; j++)
sline+=lines[j]*a[i][j];
stotal+=abs(sline);
}
if (stotal>smax)
smax=stotal;
}
void back(int p)
{
if (p==m)
sum();
else
{
lines[p]=1;
back(p+1);
lines[p]=-1;
back(p+1);
}
}
int main()
{
FILE *in=fopen("flip.in","r");
fscanf(in,"%d",&n);
fscanf(in,"%d",&m);
for (int i=0; i<n; i++)
for(int j=0; j<m; j++)
{
fscanf(in,"%d",&a[i][j]);
smax+=a[i][j];
}
fclose(in);
back(0);
FILE *out=fopen("flip.out","w");
fprintf(out,"%d",smax);
fclose(out);
return 0;
}