Cod sursa(job #350401)

Utilizator n3msizN3msiz n3msiz Data 23 septembrie 2009 19:53:51
Problema Piese Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include<stdio.h>

int a[505][505],nr,n,m,i,j,k,l,l2;

int main(){
	FILE*f=fopen("piese.in","r");FILE*g=fopen("piese.out","w");
	fscanf(f,"%d %d",&n,&m);
	
	for(i=1;i<=n;i++){
		for(j=1;j<=m;j++){
			if(a[i][j]==0){
				nr++;
				for(k=1;k+i-1<=n && k+j-1<=m;k*=2);
				k/=2;
				
				for(l=i;l<i+k;l++){
					for(l2=j;l2<j+k;l2++){
						a[l][l2]=nr;
					}
				}
			}
		}
	}
	fprintf(g,"%d\n",nr);
	
	for(i=1;i<=n;i++){
		for(j=1;j<=m;j++){
			fprintf(g,"%d ",a[i][j]);
		}
		fprintf(g,"\n");
	}
	
	fclose(f),fclose(g);
	return 0;
}