Cod sursa(job #2030503)

Utilizator MihneaGhiraMihnea MihneaGhira Data 1 octombrie 2017 18:22:33
Problema Piese Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include<fstream>
using namespace std;
ifstream fin("piese.in");
ofstream fout("piese.out");
int n,m,i,j,p1,p2,L,nr;
int a[501][501];
int main(){
    fin>>n>>m;
    for(i=1;i<=n;i++){
        for(j=1;j<=m;j++){
            L=1;
            if(a[i][j]!=0)
                continue;
            while(i+L-1<=n&&j+L-1<=m&&a[i][j+L-1]==0&&a[i+L-1][j]==0)
                L*=2;
            L/=2;
            nr++;
            for(p1=i;p1<=i+L-1;p1++)
                for(p2=j;p2<=j+L-1;p2++)
                    a[p1][p2]=nr;

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