Pagini recente » Cod sursa (job #144251) | Cod sursa (job #2945515) | Cod sursa (job #861183) | Cod sursa (job #2883078) | Cod sursa (job #1789333)
#include <fstream>
using namespace std;
unsigned fr(int k, int x, int y)
{
if (k==0)
{
return 0;
}
else
{
unsigned hatv=1;
for (int i=0;i<k-1;i++) hatv<<=1; //2^(k-1)
if (x<=hatv && y<=hatv)
{
return fr(k-1, y, x);
}
else if (x<=hatv && y>hatv)
{
return fr(k-1, x, y-hatv+1)+hatv*hatv;
}
else if (x>hatv && y>hatv)
{
return fr(k-1, x-hatv, y-hatv)+hatv*hatv<<1;
}
else if (x>hatv && y<=hatv)
{
return fr(k-1, hatv-y+1, hatv<<1-x+1)+3*hatv*hatv;
}
}
}
int main()
{
int k, x, y;
ifstream f("fractal.in");
f>>k>>x>>y;
ofstream g("fractal.out");
g<<fr(k, x, y);
}