Pagini recente » Cod sursa (job #2815817) | Cod sursa (job #364302) | Cod sursa (job #2421530) | Cod sursa (job #1887148) | Cod sursa (job #1503156)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fractal.in");
ofstream fout("fractal.out");
long doi[16],patru[16];
int main()
{long n,x,y,aux,val,nr,rez,i;
fin>>n>>y>>x;
rez=0;
doi[0]=patru[0]=1;
for(i=1;i<=15;i++)
{ doi[i]=2*doi[i-1];
patru[i]=4*patru[i-1]; }
while(n>0)
{nr=doi[n-1];
val=patru[n-1];
if(x<=nr && y<=nr)
{swap(x,y);
n--;
continue;
}
else if(x>nr && y<=nr)
{rez+=val;
y-=nr;
n--;
continue;
}
else if(x>nr && y>nr)
{rez+=2*val;
y-=nr;
x-=nr;
n--;
continue;
}
else
{rez+=3*val;
aux=x;
y-=nr;
x=nr-y+1;
y=nr-aux+1;
n--;
continue;
}
}
fout<<rez;
}