Pagini recente » Cod sursa (job #1606486) | Cod sursa (job #1514973) | Cod sursa (job #2130400) | Cod sursa (job #695211) | Cod sursa (job #983320)
Cod sursa(job #983320)
#include<stdio.h>
int solve (int k, int x, int y) {
if(k==0)
return 0;
int mij=(1<<(k-1));
//stanga sus
if(x <= mij && y <= mij)
return solve(k-1,y,x);
//stanga jos
if(x > mij && y <= mij)
return mij*mij + solve(k-1,x-mij,y);
//dreapta jos
if(x > mij && y > mij)
return 2*mij*mij + solve(k-1,x-mij,y-mij);
//dreapta sus
return 3*mij*mij + solve(k-1,2*mij-y+1,mij-x+1);
}
int main() {
freopen("fractal.in","r",stdin);
freopen("fractal.out","w",stdout);
int i,k,x,y;
scanf("%d%d%d",&k,&x,&y);
i=x;
x=y;
y=i;
printf("%d\n",solve(k,x,y));
return 0;
}