Cod sursa(job #2268595)

Utilizator DanutAldeaDanut Aldea DanutAldea Data 24 octombrie 2018 23:51:16
Problema Fractal Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.99 kb
#include <fstream>
using namespace std;

ifstream fin("fractal.in");
ofstream fout("fractal.out");

int n,x,y,sol,dim,cnt;



void love(int i, int j){
    if(dim!=1){
        if(i<dim/2){
            if(j>dim/2){
                j-=dim/2;
                swap(i,j);
                love(i,j);
                cnt=3+4*cnt;
            }else{
                int aux=n+1-j;
                j=aux+j-i;
                i=aux;
                love(i,j);
                cnt=3+4*cnt;
                sol+=3*cnt;
            }
        }else{
            if(j<dim/2){
                i-=dim/2;
                love(i,j);
                cnt=3+4*cnt;
                sol+=cnt;
            }else{
                j-=dim/2;
                i-=dim/2;
                love(i,j);
                cnt=3+4*cnt;
                sol+=2*cnt;
            }
        }


    }else{
        cnt=1;
    }
}

int main(){
    fin>>n>>x>>y;
    dim=(1<<n);
    fout<<sol;

    return 0;
}