Cod sursa(job #1726960)

Utilizator cella.florescuCella Florescu cella.florescu Data 9 iulie 2016 16:29:14
Problema Fractal Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <cstdio>

using namespace std;

int func(int k, int x, int y){
  if(k==1)
    return 0;
  k>>=1;
  if(x<=k){
    if(y<=k)
      return func(k, y, x);
    return 3*k*k+func(k, 2*k-y+1, k-x+1);
  }
  if(y>k)
    return 2*k*k+func(k, x-k, y-k);
  return k*k+func(k, x-k, y);
}

int main()
{
    FILE *fin, *fout;
    int k, x, y;
    fin=fopen("fractal.in", "r");
    fscanf(fin, "%d%d%d", &k, &x, &y);
    fclose(fin);
    fout=fopen("fractal.out", "w");
    fprintf(fout, "%d\n", func(1<<k, y, x));
    fclose(fout);
    return 0;
}