Pagini recente » Cod sursa (job #734431) | Cod sursa (job #3160915) | Cod sursa (job #1400717) | Cod sursa (job #1249842) | Cod sursa (job #1009269)
#include <fstream>
using namespace std;
ifstream fin ("fractal.in");
ofstream fout ("fractal.out");
int p[20],x,y,k,s,i,putere;
int fractal (int k,int x, int y) {
if (k<0){
return 0;
}
if (x<=p[k]&&y<=p[k]) {
s = fractal (k-1,y,x);
return s;
}if (x<=p[k]&&y>p[k]) {
s = fractal (k-1,2*p[k]-y+1,p[k]-x+1);
s += (3 * p[k] * p[k]);
return s;
}if (x>p[k] && y<= p[k]) {
s= fractal (k-1,x-p[k],y);
s += (p[k]*p[k]);
return s;
}if (x>p[k] && y>p[k]) {
s= fractal (k-1,x-p[k],y-p[k]);
s += (2*p[k]*p[k]);
return s;
}
}
int main () {
putere=1;
p[0]=1;
for (i=1;i<=15;i++) {
putere*=2;
p[i]=putere;
}
fin>>k>>x>>y;
fout<<fractal (k,x,y)<<"\n";
return 0;
}