Pagini recente » Cod sursa (job #2317536) | Cod sursa (job #2337297) | Cod sursa (job #686077) | Cod sursa (job #883798) | Cod sursa (job #530004)
Cod sursa(job #530004)
#include<stdio.h>
int m,n,a[501][501],i,j,l,min,k,q,w;
FILE *fin,*fout;
int putere(int x){
int p=1;
while(p<=x){
p=p*2;
}
return p/2;
}
int main(){
fin=fopen("piese.in","r");
fout=fopen("piese.out","w");
fscanf(fin,"%d %d",&m,&n);
for(i=1;i<=m;i++){
for(j=1;j<=n;j++){
if(a[i][j]==0){
k++;
min=m-i+1;
if(min>n-j+1)
min=n-j+1;
l=putere(min);
for(q=i;q<=i+l-1;q++){
for(w=j;w<=j+l-1;w++)
a[q][w]=k;
}
}
}
}
fprintf(fout,"%d",k);
for(i=1;i<=m;i++){
fprintf(fout,"\n");
for(j=1;j<=n;j++){
fprintf(fout,"%d ",a[i][j]);
}
}
return 0;}