Pagini recente » Cod sursa (job #401394) | Cod sursa (job #1883704) | Cod sursa (job #926223)
Cod sursa(job #926223)
#include<stdlib.h>
#include<stdio.h>
int n,m,a[17][17],i,j,x[257];
long sum,maxi;
void operare()
{
for(int k = 0; k < n; k++)
for(int l = 0; l < m; l++)
if(x[k+1] == 1 || x[l+n+1] == 1) sum += -1*a[k][l];
else sum += a[k][l];
if(sum >= maxi)
maxi=sum;
sum = 0;
}
void bk(int k)
{ int i;
for(i = 0; i <= 1; i++)
{ x[k] = i;
if (k == n+m) operare();
else bk(k+1);
}
}
int main()
{
FILE*in,*out;
in = fopen("flip.in","r");
out = fopen("flip.out","w");
fscanf(in,"%d",&n);
fscanf(in,"%d",&m);
for(i = 0; i < n; i++)
for(j = 0; j < m; j++)
fscanf(in,"%d",&a[i][j]);
bk(1);
fprintf(out,"%d",maxi);
fclose(in);
fclose(out);
return 0;
}