Cod sursa(job #2540636)

Utilizator dianaICHBghita diana dianaICHB Data 7 februarie 2020 13:37:53
Problema Piese Scor 0
Compilator cpp-64 Status done
Runda irim_eralumis Marime 1.28 kb
#include <cstdio>

using namespace std;
int w[505][505],v[500];
int main()
{
    freopen("piese.in","r",stdin);
    freopen("piese.out","w",stdout);
    int n,m,con,minn,i,j,i1,j1,nr,nr1;
    scanf("%d%d",&n,&m);
    con=0;
        if (n<=m)
            minn=n;
        else
            minn=m;
        nr=1;
        for (i=1; i<=minn; i++)
        {
            nr=nr*2;
            if (nr>minn)
            {
                nr=nr/2;
                i=minn+500;
            }
        }

        for (i=1; i<=n; i++)
        {
            for (j=1; j<=m; j++)
            {
                if (w[i][j]==0)
                {
                    con++;
                    nr1=nr;
                    while (nr1>(n-i+1)||nr1>(m-j+1))
                    {
                        nr1=nr1/2;
                    }
                    for (i1=i;i1<=nr1-1+i;i1++)
                    {
                        for (j1=j;j1<=nr1-1+j;j1++)
                            w[i1][j1]=con;
                    }
                }
            }
                //m[i][j]=con;
        }
        printf("%d\n",con);
        for (i=1;i<=n;i++)
        {
            for (j=1;j<=m;j++)
                printf("%d",w[i][j]);
            printf("\n");
        }
    return 0;
}