Cod sursa(job #2036466)

Utilizator dragomirmanuelDragomir Manuel dragomirmanuel Data 10 octombrie 2017 18:41:46
Problema Fractal Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <iostream>
#include <fstream>

using namespace std;

int Solve(int pow, int x, int y)
{
    if(pow==1)
        return 0;

    pow/=2;

    if(x<=pow && y<=pow)
        return Solve(pow,y,x);

    else if(x <= pow && y>pow)
        return pow*pow + Solve(pow, x, y-pow);

    else if(y<=pow && x>pow)
        return 3*pow*pow + Solve(pow, pow-y+1, 2*(pow)-x+1);

    else
        return 2*pow*pow + Solve(pow, x-pow, y-pow);
}

int main()
{
    ifstream fin("fractal.in");
    ifstream fout("fractal.out");

    int pow, x, y, k;
    fin >> k >> x >> y;
    pow = (1 << k);
    fout << Solve(pow, x, y);
    return 0;
}