Cod sursa(job #712137)

Utilizator iarbaCrestez Paul iarba Data 13 martie 2012 07:57:32
Problema Fractal Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <stdio.h>
#include <math.h>
long n,m,p,s;
FILE *f,*g;

long cauta(long x,long y,long k)
{
	char cadran;
	long r;
	k/=2;
	if((x<=k)&&(y<=k)){cadran=1;}
	if((x>k)&&(y<=k)){cadran=2;}
	if((x>k)&&(y>k)){cadran=3;}
	if((x<=k)&&(y>k)){cadran=4;}
	if(k-1){
	if(cadran==1){r=k*k-cauta(y,k-x+1,k)+1;}
	if(cadran==2){r=2*k*k-cauta(x-k,y,k)+1;}
	if(cadran==3){r=3*k*k-cauta(x-k,y-k,k)+1;}
	if(cadran==4){r=4*k*k-cauta(2*k-y+1,x,k)+1;}
	       }
	else{r=cadran;}
return r;
}

int main()
{
	f=fopen("fractal.in","r");
	g=fopen("fractal.out","w");
	fscanf(f,"%ld%ld%ld",&p,&m,&n);
	s=pow(2,p);
	p=cauta(n,m,s);
	fprintf(g,"%ld",p-1);
	fclose(f);fclose(g);
return 0;
}