比赛 H大佬的水题争霸赛 评测结果 AAAAAAAAAA
题目名称 石子游戏 最终得分 100
用户昵称 sdzwyq 运行时间 0.015 s
代码语言 C++ 内存使用 0.51 MiB
提交时间 2018-08-04 16:19:56
显示代码纯文本
#define il inline
#define ri register int
#include<cstdio>
#include<iostream>
#include<cstdlib>
using namespace std;
il int re(){
	ri x=0,w=1;register char ch=getchar();
	while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
	while(ch>='0'&&ch<='9')x=x*10+ch-'0',ch=getchar();
	return x*w;
}
int n,a[40000];
bool vis[40000];
il void Print(){
	a[(1<<n)+1]=0;
	for(ri i=1;i<=(1<<n)+1;i++){
		for(ri j=0;j<n;j++)
			if(a[i]&(1<<j))putchar('X');
			else putchar('O');
		puts("");
	}
}
void dfs(ri S,ri step){
	if(vis[S])return;vis[S]=1;a[step]=S;
	if(step==(1<<n)){Print();exit(0);}
	for(ri i=0;i<n;i++){
		if(S&(1<<i))dfs(S^(1<<i),step+1);
		else dfs(S|(1<<i),step+1);
	}
}
int main(){
	freopen("rocksa.in","r",stdin);
	freopen("rocksa.out","w",stdout);
	n=re();
	dfs(0,1);
	return 0;
}