Cod sursa(job #4173)

Utilizator cezar305Mr. Noname cezar305 Data 31 decembrie 2006 15:02:09
Problema Fractal Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <fstream.h>
#include <iomanip.h>

fstream fin("fractal.in",ios::in);
fstream fout("fractal.out",ios::out);
const long long m[2][2]={0,3,1,2};
long long k,x,y,n=0,lat,cadran;

int main(){
  fin>>k>>x>>y;
  while (k>1){
    lat=1<<(k-1);k--; //fout<<k<<" "<<lat<<endl;
    if ((x<=lat)&&(y<=lat)) cadran=0;
    if ((x>lat)&&(y<=lat))  {cadran=3;x-=lat;}
    if ((x<=lat)&&(y>lat))  {cadran=1;y-=lat;}
    if ((x>lat)&&(y>lat))   {cadran=2;x-=lat;y-=lat;}
    n+=cadran*lat*lat;
  }  
  fout<<n+m[x-1][y-1];
fin.close();fout.close();
return 0;
}