Pagini recente » Cod sursa (job #633287) | Cod sursa (job #741973) | Cod sursa (job #2668016) | Cod sursa (job #822554) | Cod sursa (job #2348962)
#include <iostream>
#include <fstream>
#define ll long long
using namespace std;
ifstream f("fractal.in");
ofstream g("fractal.out");
ll fractal(int k,int x,int y)
{
if(k==0)
return 0;
k--;
ll len=1<<k;
if(x<=len && y<=len)///cadranul I
return fractal(k,y,x);
if(x<=len && y>len)/// cadranul II
return len*len+fractal(k,x,y-len);
if(x>len && y>len)///cadraunl III
return 2*len*len+fractal(k,x-len,y-len);
if(x>len && y<=len)///cadranul IV
return 3*len*len+fractal(k,len+1-y,len+1-(x-len));
return 0;
}
int main()
{
int k,x,y;
f>>k>>x>>y;
g<<fractal(k,x,y);
}