Pagini recente » Cod sursa (job #1453559) | Cod sursa (job #1792251) | Cod sursa (job #1008990) | Cod sursa (job #2432868) | Cod sursa (job #2268693)
#include <iostream>
#include <fstream>
using namespace std;
int k,n,x,y;
ifstream fin("fractal.in");
ofstream fout("fractal.out");
int fractal(int n,int i,int j){
if(n==2){
if(i==1&&j==1)
return 0;
if(i==1&&j==2)
return 3;
if(i==2&&j==1)
return 2;
return 1;
}
n >>=1;
// cadran 1
if(x<=n&&y<=n)
return fractal(n,j,i);
// cadran 3
if(x>n&&y<n)
return n*n+ fractal(n,i-n,j);
//cadran 4
if(x>n&&y>n)
return 2*n*n+fractal(n,i-n,j-n);
//cadran 2
int x,y;
x=j;
y=n-i+1;
y=n-y+1;
i=x;
j=y;
return 3*n*n + fractal (n,i,j);
}
int main()
{
fin>>k>>y>>x;
k=(1<<k);
fout<<fractal(k,x,y);
}