Pagini recente » Cod sursa (job #1265502) | Cod sursa (job #898200) | Cod sursa (job #2431906) | Cod sursa (job #1550513) | Cod sursa (job #478638)
Cod sursa(job #478638)
#include<fstream>
using namespace std;
int n,x,y;
int rec(int k, int x, int y, int lat)
{
if(x==1 && y==1)
return 0;
if(x<=(1<<(k-1)) && y<=(1<<(k-1)))
return rec(k-1,y,x,lat/4);
if(y<=(1<<(k-1)))
return lat/4+rec(k-1,x-(1<<(k-1)),y,lat/4);
if(x>(1<<(k-1)) && y>(1<<(k-1)))
return lat/2+rec(k-1,x-(1<<(k-1)),y-(1<<(k-1)),lat/4);
y=y-(1<<(k-1));
return lat/4*3+rec(k-1,(1<<(k-1))-y+1,(1<<(k-1))-x+1,lat/4);
}
int main()
{
ifstream f("fractal.in");
ofstream g("fractal.out");
f>>n>>y>>x;
g<<rec(n,x,y,1<<2*n);
return 0;
}