Cod sursa(job #1680275)

Utilizator razvandraghiciDraghici Razvan razvandraghici Data 8 aprilie 2016 17:01:02
Problema Piese Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream>

using namespace std;
int v[24], a[503][503], i, j, x, ii, jj, n, m, nr;
int main()
{
    ifstream fin ("piese.in");
    ofstream fout("piese.out");

    v[0]=1;
    for(i=1;i<=23;i++)
        v[i]=v[i-1]*2;


    nr=1;


    fin>>n>>m;
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++){
            if(a[i][j]==0){
                x=0;
                while(i+v[x]-1<=n && j+v[x]-1<=m)
                    x++;
                x--;
                for(ii=i;ii<=v[x]+i-1;ii++)
                    for(jj=j;jj<=v[x]+j-1;jj++)
                        a[ii][jj]=nr;
                nr++;
            }
        }

    fout<<nr-1<<"\n";

    for(i=1;i<=n;i++){
        for(j=1;j<=m;j++)
            fout<<a[i][j]<<" ";
        fout<<"\n";
    }

    return 0;
}