#include <fstream>
using namespace std;
ifstream cin("fractal.in");
ofstream cout("fractal.out");
int ans(int k,int x, int y)
{
int nx, ny, p2=(1<<(k-1));
if(x==1 && y==1)
return 0;
if(x==1 && y==(1<<k))
return (1<<(2*k))-1;
if(x<=p2 && y<=p2)
{
nx=y;
ny=x;
return ans(k-1,nx,ny);
}
else if(x<=p2){
nx=(1<<k)-y+1;
ny=x;
return 3*(1<<(2*k-2))+ans(k-1,nx,ny);
}
else if(y<=p2){
nx=x-p2;
ny=y;
return (1<<(2*k-2))+ans(k-1,nx,ny);
}
else{
nx=x-p2;
ny=(1<<k)-y+1;
return (1<<(2*k-2))+ans(k-1,nx,ny);
}
}
int main()
{
int k,x,y;
cin>>k>>x>>y;
cout<<ans(k+1,x,y)<<'\n';
return 0;
}