Pagini recente » Cod sursa (job #63114) | Cod sursa (job #3279767) | Cod sursa (job #3244602) | Cod sursa (job #13148) | Cod sursa (job #3145591)
#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>
#include <fstream>
using namespace std;
ifstream fin ("fractal.in");
ofstream fout ("fractal.out");
int solve(int k,int x,int y)
{
int d;
if(k==0)
return 0;
d=(1<<(k-1));
if(x<=d && y<=d)
return solve(k-1,y,x);
if(x>d && y<=d)
return d*d+solve(k-1,x-d,y);
if(x>d && y>d)
return 2*d*d+solve(k-1,x-d,y-d);
else
return 3*d*d+solve(k-1,2*d-y+1,d-x+1);
}
int main()
{
int k,x,y;
fin>>k>>y>>x;
fout<<solve(k,x,y);
return 0;
}