Pagini recente » Cod sursa (job #2886760) | Cod sursa (job #2756237) | Cod sursa (job #459646) | Cod sursa (job #763615) | Cod sursa (job #132622)
Cod sursa(job #132622)
#include<stdio.h>
#include<math.h>
long long i,j,k;
long long curba(long long i,long long j,long long k)
{if(k==0) return 0;
long long n=pow(2,k-1),m=n*n;
long long nr=0;
unsigned int a;
if(i<=n)if(j<=n){a=i;i=j;j=a;j=n-j+1;nr=n*n-curba(i,j,k-1);}
else{nr=4*n*n; j=j-n;a=i;i=j;j=a;i=n-i+1;nr=nr-curba(i,j,k-1);}
else if(j<=n) {nr=n*n;i=i-n; nr=nr+curba(i,j,k-1);}
else {nr=n*n*2;i=i-n;j=j-n; nr=nr+curba(i,j,k-1);}
return nr;
}
int main()
{freopen("fractal.in","r",stdin);
freopen("fractal.out","w",stdout);
scanf("%lld %lld %lld",&k,&j,&i);
printf("%lld",curba(i,j,k));
fclose(stdout);
return 0;}