Cod sursa(job #227885)

Utilizator badescugaBadescu Alexandru badescuga Data 5 decembrie 2008 18:51:46
Problema Jocul Flip Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include<fstream.h>
float max,a[17][17];
int n,m,b[17][17];
 
void tipar()
{ float s=0; for(int i=0;i<n;i++) for(int j=0;j<m;j++) if(b[i][j]%2==0) s+=a[i][j]; else s-=a[i][j];
if(s>max) max=s; }


void back(int i,int j)
{ if(i==n-1&&j==m) tipar();
else if(j==m) back(i+1,0); 
else { 
		back(i,j+1); 
for(int l=0;l<m;l++)
 b[i][l]++; 
for(int l=0;l<n;l++)
	b[l][j]++;
b[i][j]--;
		back(i,j+1);
for(int l=0;l<m;l++)
 b[i][l]--; 
for(int l=0;l<n;l++)
	b[l][j]--;
b[i][j]++;
} }



int main()
{ ifstream f("flip.in");
  ofstream g("flip.out");
 
  f>>n>>m; int i,j;
  for(i=0;i<n;i++)
	  for(j=0;j<n;j++) { f>>a[i][j]; max+=a[i][j]; }
    back(0,0);	    
 
  g<<max;
  
  return 0; }