Pagini recente » Cod sursa (job #2375411) | Cod sursa (job #2888516) | Cod sursa (job #1890653) | Cod sursa (job #2714795) | Cod sursa (job #497313)
Cod sursa(job #497313)
#include <stdio.h>
FILE *f,*s;
int k,x,y,z;
void Rezolva(int k,int x, int y)
{
if(k==0) return;
int l=1<<(k-1);
if(x<=k&&y<=k) Rezolva(k-1,x,y); // Cadran 1
if(x>k&&y<=k) { z+=l*l; Rezolva(k-1,x-l,y); } // Cadran 2
if(x>k&&y>k) { z+2*l*l; Rezolva(k-1,x-l,y-l); } //Cadran 3
if(x<=l&&y>l) { z+=3*l*l; Rezolva(k-1,2*l-y+1,l-x+1); } //Cadran 4
}
int main()
{
f=fopen("fractal.in","r");
s=fopen("fractal.out","w");
fscanf(f,"%d %d %d",&k,&x,&y);
Rezolva(k,x,y);
fprintf(s,"%d",z);
fclose(s);
return 0;
}