Pagini recente » Cod sursa (job #2489449) | Cod sursa (job #1294661) | Cod sursa (job #1708716) | Cod sursa (job #1906593) | Cod sursa (job #2268699)
#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(x<=2&&y<=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(i<=n&&j<=n)
return fractal(n,j,i);
// cadran 3
if(i>n&&j<n)
return n*n+ fractal(n,i-n,j);
//cadran 4
if(i>n&&j>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);
}