#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,x,y,a;
void solve(int k,int lx,int ly,int nx,int ny){
if(k==0){
return;
}
int t=(1<<k-1);
int rx=lx+t,ry=ly+t;
if(nx<rx&&ny<ry){
//第一区间
printf("%lld %lld 1\n",rx,ry);
solve(k-1,lx,ly,nx,ny);
solve(k-1,lx,ry,rx-1,ry);
solve(k-1,rx,ly,rx,ry-1);
solve(k-1,rx,ry,rx,ry);
}
else if(nx<rx){
//第二区间
printf("%lld %lld 2\n",rx,ry-1);
solve(k-1,lx,ly,rx-1,rx-1);
solve(k-1,lx,ry,nx,ny);
solve(k-1,rx,ly,rx,ry-1);
solve(k-1,rx,ry,rx,ry);
}
else if(ny<ry){
//第三区间
printf("%lld %lld 3\n",rx-1,ry);
solve(k-1,lx,ly,rx-1,rx-1);
solve(k-1,lx,ry,rx-1,ry);
solve(k-1,rx,ly,nx,ny);
solve(k-1,rx,ry,rx,ry);
}
else{
//第四区间
printf("%lld %lld 4\n",rx-1,ry-1);
solve(k-1,lx,ly,rx-1,rx-1);
solve(k-1,lx,ry,rx-1,ry);
solve(k-1,rx,ly,rx,ry-1);
solve(k-1,rx,ry,nx,ny);
}
}
signed main(){
scanf("%lld%lld%lld",&n,&x,&y);
a=n;
n=pow(2,n);
solve(a,1,1,x,y);
return 0;
}
已找到hack
3
4 5