Cod sursa(job #295226)

Utilizator dexter_dexMutascu Adrian - Dragos dexter_dex Data 3 aprilie 2009 09:02:26
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include<stdio.h>

int mat[102][12],n,m,stele,i,j,x,a[102][12],max,k;

FILE*f=fopen("stele10.in","r");
FILE*g=fopen("stele.out","w");

int main (){

fscanf(f,"%d %d",&n,&m);

for (i=1;i<=n;i++)
	for (j=1;j<=m;j++){

		fscanf(f,"%d",&x);
		if (x==0) mat[i][j]=-1;
			else mat[i][j]=1;
	}



for (i=0;i<(1<<m);i++) {
	for (j=0;j<m;j++)

		if ((i>>j)&1 == 1) for (k=1;k<=n;k++) a[k][j+1]=mat[k][j+1]*-1;

			else for (k=1;k<=n;k++) a[k][j+1]=mat[k][j+1];   //bitul j din scrierea binara a lui i

	stele=0;

	for (k=1;k<=n;k++)
		for (j=1;j<=m;j++)

			if (a[k][j]==1&&a[k][j-1]==1&&a[k][j+1]==1&&a[k-1][j]==1&&a[k+1][j]==1) stele++;

	if (max<stele) max=stele;

	}


fprintf(g,"%d",max);


fclose(f);
fclose(g);
return 0;
}