Cod sursa(job #2268699)

Utilizator denmirceaBrasoveanu Mircea denmircea Data 25 octombrie 2018 10:20:14
Problema Fractal Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <iostream>
#include <fstream>
using namespace std;
int k,n,x,y;
ifstream fin("fractal.in");
ofstream fout("fractal.out");
int fractal(int n,int i,int j){
if(x<=2&&y<=2){
    if(i==1&&j==1)
        return 0;
    if(i==1&&j==2)
    return 3;
    if(i==2&&j==1)
        return 2;
    return 1;
}
n >>=1;
// cadran 1
if(i<=n&&j<=n)
    return fractal(n,j,i);
// cadran 3
if(i>n&&j<n)
    return n*n+ fractal(n,i-n,j);
//cadran 4
if(i>n&&j>n)
    return 2*n*n+fractal(n,i-n,j-n);
//cadran 2
int x,y;
x=j;
y=n-i+1;
y=n-y+1;
i=x;
j=y;
   return 3*n*n + fractal (n,i,j);
}
int main()
{
   fin>>k>>y>>x;
   k=(1<<k);
  fout<<fractal(k,x,y);
}