Pagini recente » Cod sursa (job #1016890) | Cod sursa (job #1467428) | Cod sursa (job #3141497) | Cod sursa (job #2346720) | Cod sursa (job #1231085)
#include<cstdio>
using namespace std;
int k,x,y;
int solve(int gr,int x,int y)
{
int aux;
if(gr<0)
{
return 0;
}
aux=1<<gr;
if((x<=aux)&&(y<=aux))
{
return solve(gr-1,x,y);
}
if((x>aux)&&(y<=aux))
{
return aux*aux+solve(gr-1,x-aux,y);
}
if((x>aux)&&(y>aux))
{
return aux*aux+solve(gr-1,x-aux,y-aux);
}
return 3*aux*aux+solve(gr-1,2*aux-y+1,aux-x+1);
}
int main()
{
freopen("fractal.in","r",stdin);
freopen("fractal.out","w",stdout);
scanf("%d%d%d",&k,&x,&y);
printf("%d\n",solve(k,x,y));
}