#include <iostream>
#include <map>
using namespace std;
typedef long long ll;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
ll k;
cin>>k;
char cur[100][100];
ll pw=1;
int lg=0;
while((pw*2)<=k)pw*=2,lg++;
for(int i=0;i<=lg;i++)
{
for(int j=0;j<=lg;j++)
{
if(abs(i-j)>1)
{
cur[i][j]='.';
}
else if(i==j-1)
{
cur[i][j]='d';
}
else if(i-1 == j)
{
cur[i][j]='r';
}
else{
cur[i][j]='X';
}
}
}
cur[lg][lg]='r'; // this power of two only once
for(int i=lg-1;i>=0;i--)
{
pw/=2;
if(k&pw)
{
cur[i][i+1]='X';
}
}
for(int i=0;i<=lg+1;i++)cur[i][lg+1]='d';
for(int i=0;i<=lg+1;i++)cur[lg+1][i]='r';
cur[lg+1][lg+1]='.';
cout<<lg+2<<' '<<lg+2<<endl;
for(int i=0;i<=lg+1;i++)
{
for(int j=0;j<=lg+1;j++)
{
cout<<cur[i][j];
}
cout<<endl;
}
// maximum power is
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |