Pagini recente » Cod sursa (job #353533) | Cod sursa (job #2285459) | Cod sursa (job #2926848) | Cod sursa (job #422673) | Cod sursa (job #382531)
Cod sursa(job #382531)
#include<stdio.h>
int v[17][17], n, m;
int sumaMax = 0;
FILE *f=fopen("flip.in","r");
FILE *g=fopen("flip.out","w");
void citire()
{
fscanf(f, "%d%d", &n, &m);
for (int i=1;i<=n;++i)
for (int j=1;j<=m;++j)
fscanf(f,"%d",&v[i][j]);
}
void suma()
{
int suma, sumaV = 0;
for(int j=1; j <= m; j++)
{
suma = 0;
for(int i=1; i <= n; i++)
suma += v[i][j];
if(suma > 0)
sumaV += suma;
else
sumaV -= suma;
}
if(sumaV > sumaMax)
sumaMax = sumaV;
}
void back(int k)
{
if(k > n)
return;
suma();
back(k + 1);
for(int i=1; i <= m; i++)
v[k][i] = -v[k][i];
suma();
back(k + 1);
}
int main()
{
citire();
back(1);
fprintf(g, "%d", sumaMax);
fclose(f);
fclose(g);
return 0;
}