Pagini recente » Cod sursa (job #800401) | Cod sursa (job #1362080) | Cod sursa (job #2605138) | Cod sursa (job #2907481) | Cod sursa (job #1280462)
# include <bits/stdc++.h>
using namespace std;
ifstream fi("piese.in");
ofstream fo("piese.out");
int s[505][505],p=0;
void acopera(int x,int y,int z,int t)
{
if (x > y || z > t) return ;
int n=min(y-x+1,t-z+1);
int l=1;
while (l*2<=n) l*=2;++p;
for (int i=x;i<x+l;++i)
for (int j=z;j<z+l;++j) s[i][j]=p;
acopera(x+l,y,z,z+l-1);
acopera(x,y,z+l,t);
}
int main(void)
{
int n,m;
fi>>n>>m;
acopera(1,n,1,m);
fo << p << '\n';
for (int i=1;i<=n;++i,fo<<'\n') for (int j=1;j<=m;++j) fo << s[i][j] << ' ';
return 0;
}