Pagini recente » Cod sursa (job #2641441) | Cod sursa (job #327881) | Cod sursa (job #580392) | Cod sursa (job #1555922) | Cod sursa (job #773493)
Cod sursa(job #773493)
#include<stdio.h>
FILE *fin=fopen("flip.in", "r");
FILE *fout=fopen("flip.out", "w");
int n,m,i,j;
int suma,sumamax;
int a[20][20], v[20];
void calcul(){
suma=0;
int aux[20];
for (i=1; i<=m; i++)
aux[i]=0;
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
aux[j]+=a[i][j]*v[i];
for (i=1; i<=m; i++)
if (aux[i]<0)
suma+=aux[i]*(-1);
else
suma+=aux[i];
if (suma>sumamax)
sumamax=suma;
}
void bkt(int k){
if (k==n+1)
calcul();
else
{
v[k]=-1;
bkt(k+1);
v[k]=1;
bkt(k+1);
}
}
int main(){
fscanf(fin, "%d", &n);
fscanf(fin, "%d", &m);
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
{
fscanf(fin, "%d", &a[i][j]);
sumamax+=a[i][j];
}
bkt(1);
fprintf(fout, "%d", sumamax);
fclose(fin);
fclose(fout);
return 0;
}