Cod sursa(job #1235094)

Utilizator apopeid15Apopei Daniel apopeid15 Data 28 septembrie 2014 19:20:08
Problema Fractal Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <fstream>
using namespace std;
ifstream fin("fractal.in");
ofstream fout("fractal.out");
int k,x,y;
 
int Fractal(int k, int x, int y)
{
    if(k == 0) return 0;
    int mij = (1 << (k-1));
    int fractal = mij * mij;
    if(x <= mij && y <= mij) return Fractal(k-1, y, x);
    if(x <= mij && y > mij) return 3*fractal + Fractal(k-1, 2*mij-y+1, mij-x+1);
    if(x > mij && y <= mij) return fractal + Fractal(k-1, x-mij, y);
    if(x > mij && y > mij) return 2*fractal + Fractal(k-1, x-mij, y-mij);
}
 
int main()
{
    fin >> k >> y >> x;
    fout << Fractal(k, x, y) << '\n';
    fout.close();
    return 0;
}