Pagini recente » Cod sursa (job #2693922) | Cod sursa (job #1986829) | Cod sursa (job #2561735) | Cod sursa (job #677389) | Cod sursa (job #390458)
Cod sursa(job #390458)
#include<fstream>
using namespace std;
const char iname[]="fractal.in";
const char oname[]="fractal.out";
ifstream f(iname);
ofstream g(oname);
long long k,x,y,i;
long long dps(long long k,long long x,long long y)
{
if(k==1)
if(x==1)
if(y==1)
return 0;
else
return 3;
else
if(y==1)
return 1;
else
return 2;
if(x<=(1LL<<k-1))
if(y<=(1LL<<k-1))
return (1LL<<2*k-2)-dps(k-1,y,(1LL<<k-1)-x+1)-1;
else
return (1LL<<2*k)-dps(k-1,(1LL<<k)-y+1,x)-1;
else
if(y>(1LL<<k-1))
return dps(k-1,x-(1LL<<k-1),y-(1LL<<k-1))+2*(1LL<<2*k-2);
else
return dps(k-1,x-(1LL<<k-1),y)+(1LL<<2*k-2);
}
int main()
{
for(i=1;i<=1;++i)
f>>k>>x>>y,
g<<dps(k,y,x)<<"\n";
f.close();
g.close();
return 0;
}