Pagini recente » Cod sursa (job #3038048) | Cod sursa (job #1948795) | Cod sursa (job #1634148) | Cod sursa (job #774112) | Cod sursa (job #2268610)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fractal.in");
ofstream fout("fractal.out");
int x,y,k,n;
int fractal(int k ,int x,int y){
if(k==1||(x<=2&&y<=2))
{
cout<<x<<" "<<y;
if(x==1&&y==1)
return 0;
if(x==2&&y==1)
return 3;
if(x==1&&y==2)
return 1;
return 2;
}
cout<<x<<y<<endl;
int n =(1<<k);
n >>=1;
if(x>n&&y<=n)
return n*n+fractal(k-1,x-n,y);
else
if(x>n&&y>n)
return 2*n*n+fractal(k-1,x-n,y-n);
if(x<=n&&y<=n)
return fractal(k-1,y,x);
else
return 3*n*n+fractal(k-1,n-x+1,n-(y-n)+1);
}
int main()
{
fin>>k>>x>>y;
fout<<fractal(k,y,x);
}