Pagini recente » Cod sursa (job #164870) | Cod sursa (job #277043) | Cod sursa (job #2649759) | Cod sursa (job #116481) | Cod sursa (job #1404941)
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
int n,i,j,x,y;
int solve(int n,int x,int y)
{
int l=1<<n;
if (n==0) return 0;
if (x<=l/2 && y<=l/2)
return solve(n-1,y,x);
else if (x>l/2 && y<=l/2)
return solve(n-1,x-l/2,y)+((l*l)/4);
else if (x<=l/2 && y>l/2)
return solve(n-1,l-y+1,l/2+1-x)+((l*l*3)/4);
/// else if (x>l/2 && y>l/2)
return solve(n-1,x-l/2,y-l/2)+((l*l)/2);
}
int main()
{
freopen("fractal.in","r",stdin);
freopen("fractal.out","w",stdout);
scanf("%d %d %d",&n,&x,&y);
printf("%d",solve(n,y,x));
return 0;
}