Pagini recente » Cod sursa (job #2373953) | Cod sursa (job #1261528) | Cod sursa (job #2246349) | Cod sursa (job #1955668) | Cod sursa (job #390455)
Cod sursa(job #390455)
#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;
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()
{
f>>k>>x>>y;
g<<dps(k,y,x)<<"\n";
f.close();
g.close();
return 0;
}