Cod sursa(job #187619)

Utilizator ProcopliucProcopliuc Adrian Procopliuc Data 4 mai 2008 20:41:19
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
# include <stdio.h>
int i,j,n,m,k,b[20][20],a[20],smax=-32000,s1,s2,c[20][20],s;
void schimba ()
{
for (i=1;i<=n;i++)
if (a[i]==2)
for (j=1;j<=m;j++)
c[i][j]=c[i][j]*-1;
for (j=n+1;j<=n+m;j++)
if (a[j]==2)
for (i=1;i<=n;i++)
c[i][j-n]=c[i][j-n]*-1;



}

void xyz (int i)
{
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
c[i][j]=b[i][j];
schimba ();
s=0;

for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
s=s+c[i][j];
if (smax<s)
smax=s;
}


void back (int i)
{
int val;
for (val=1;val<=2;val++)
{
a[i]=val;
if (i<=n+m)
if (i==n+m)
xyz (i);
else
back (i+1);
}
}
int main ()
{
freopen ("flip.in","r",stdin);
freopen ("flip.out","w",stdout);
scanf ("%i",&n);
scanf ("%i",&m);
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
scanf ("%i",&b[i][j]);
back (1);
printf ("%i",smax);
return 0;
}