Pagini recente » Cod sursa (job #2157165) | Cod sursa (job #3263213) | Cod sursa (job #3183275) | Cod sursa (job #299338) | Cod sursa (job #2036466)
#include <iostream>
#include <fstream>
using namespace std;
int Solve(int pow, int x, int y)
{
if(pow==1)
return 0;
pow/=2;
if(x<=pow && y<=pow)
return Solve(pow,y,x);
else if(x <= pow && y>pow)
return pow*pow + Solve(pow, x, y-pow);
else if(y<=pow && x>pow)
return 3*pow*pow + Solve(pow, pow-y+1, 2*(pow)-x+1);
else
return 2*pow*pow + Solve(pow, x-pow, y-pow);
}
int main()
{
ifstream fin("fractal.in");
ifstream fout("fractal.out");
int pow, x, y, k;
fin >> k >> x >> y;
pow = (1 << k);
fout << Solve(pow, x, y);
return 0;
}