Submission #1318485

#TimeUsernameProblemLanguageResultExecution timeMemory
1318485Faisal_SaqibCostinland (info1cup19_costinland)C++20
63.59 / 100
1 ms332 KiB
#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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...