Wa:样例输出1 9 3
查看原帖
Wa:样例输出1 9 3
313716
EgLund楼主2020/8/4 23:41

code:

#include <cstdio>
#include <iostream>
using namespace std;
int n0;int px,py;
void s(int n,int zx,int zy,int rx,int ry)
{
	if(n==1)return;
	n>>=1;
	if(zx-rx<n)
		if(zy-ry<n)
		{
			cout<<rx+n<<' '<<ry+n<<" 1\n";
			s(n,zx,zy,rx,ry);
			s(n,rx+n-1,ry+n,rx,ry+n);
			s(n,rx+n,ry+n-1,rx+n,ry);
			s(n,rx+n,ry+n,rx+n,ry+n);
		}
		else
		{
			cout<<rx+n<<' '<<ry+n-1<<" 2\n";
			s(n,rx+n-1,ry+n-1,rx,ry);
			s(n,zx,zy,rx,ry+n);
			s(n,rx+n,ry+n-1,rx+n,ry);
			s(n,rx+n,ry+n,rx+n,ry+n);
		}
	else
		if(zy-ry<n)
		{
			cout<<rx+n-1<<' '<<ry+n<<" 3\n";
			s(n,rx+n-1,ry+n-1,rx,ry);
			s(n,rx+n-1,ry+n,rx,ry+n);
			s(n,zx,zy,rx+n,ry);
			s(n,rx+n,ry+n,rx+n,ry+n);
		}
		else
		{
			cout<<rx+n-1<<' '<<ry+n-1<<" 4\n";
			s(n,rx+n-1,ry+n-1,rx,ry);
			s(n,rx+n-1,ry+n,rx,ry+n);	
			s(n,rx+n,ry+n-1,rx+n,ry);
			s(n,zx,zy,rx+n,ry+n);
		}
}
int main()
{
	cin>>n0>>px>>py;
	s(px,py ,1,1,1<<n0);
}
2020/8/4 23:41
加载中...