Cod sursa(job #2023218)

Utilizator Mircea_DonciuDonciu Mircea Mircea_Donciu Data 18 septembrie 2017 16:19:01
Problema Piese Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <cstdio>

int a[505][505],i,j,ii,jj,k,sol,n,m;
int main()
{
    freopen("piese.in","r",stdin);
    freopen("piese.out","w",stdout);
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=m;j++)
        {
            if(a[i][j]==0)
            {
                k=1;
                while(i+k*2-1<=n&&j+k*2-1<=m)
                    k*=2;
                sol++;
                for(ii=i;ii<=i+k-1;ii++)
                    for(jj=j;jj<=j+k-1;jj++)
                        a[ii][jj]=sol;
            }
        }
    }
    printf("%d\n",sol);
    for(i=1; i<=n; i++)
    {
        for(j=1;j<=m;j++)
            printf("%d ",a[i][j]);
        printf("\n");
    }
    return 0;
}