Pagini recente » Diferente pentru prezentare intre reviziile 16 si 31 | Istoria paginii utilizator/drsdub | Monitorul de evaluare | Cod sursa (job #944551) | Cod sursa (job #1169646)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fractal.in");
ofstream fout("fractal.out");
int k,x,y;
int fractal(int k, int x, int y)
{
if(k==1)
return 0;
k/=2;
if(x<=k&&y<=k)
return fractal(k,y,x);
else
if(x<=k)
return k*k+fractal(k,x,y-k);
else
if(y<=k)
return k*k*3+fractal(k,k-y+1,2*k-x+1);
else
return k*k*2+fractal(k,x-k,y-k);
}
int main()
{
fin>>k>>x>>y;
fout<<fractal(1<<k,x,y);
return 0;
}