Cod sursa(job #1752040)

Utilizator Bodo171Bogdan Pop Bodo171 Data 2 septembrie 2016 16:55:28
Problema Fractal Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <iostream>
#include<fstream>
using namespace std;
int a[5][5],t,cost,x,y,k,newc,i;
void dei(int cadran,int lev)
{
    t=(1<<lev);
    if(x>t&&y>t) {newc=3;x-=t;y-=t;}
    if(x<=t&&y<=t) {newc=1;}
    if(x>t&&y<=t) {newc=4;x-=t;}
    if(x<=t&&y>t) {newc=2;y-=t;}
    cost+=t*t*a[cadran][newc];
    if(lev>0) dei(newc,lev-1);
}
int main()
{
    ifstream f("fractal.in");
    ofstream g("fractal.out");
    f>>k>>x>>y;
    int unu[]={-1,0,3,2,1};
    int doi[]={-1,0,1,2,3};
    int trei[]={-1,2,1,0,3};
    for(i=1;i<=4;i++)
        a[1][i]=unu[i];
    for(i=1;i<=4;i++)
    {
        a[2][i]=doi[i];
        a[3][i]=doi[i];
    }
    for(i=1;i<=4;i++)
      a[4][i]=trei[i];
    dei(2,k-1);
    g<<cost;
    return 0;
}