Pagini recente » Cod sursa (job #683058) | Cod sursa (job #254570) | Cod sursa (job #613820) | Cod sursa (job #316150) | Cod sursa (job #1981482)
#include <stdio.h>
#include <stdlib.h>
int n,m,max,a[17][17],v[17],s[17][17];
void bkt(int ct)
{
if(ct>m)
{
int i,j,suma,sum;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
s[i][j]=v[j];
suma=0;
for(i=1; i<=n; i++)
{
sum=0;
for(j=1; j<=m; j++)
sum+=a[i][j]*s[i][j];
suma+=abs(sum);
}
if(suma>max)
max=suma;
}
else
for(v[ct]=-1; v[ct]<=1; v[ct]+=2)
bkt(ct+1);
}
int main()
{
int i,j;
freopen("flip.in","r",stdin);
freopen("flip.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
scanf("%d",&a[i][j]);
bkt(1);
printf("%d\n",max);
return 0;
}