#include #include #include #include using namespace std; int dx[] = {0, -1, 0, 1}; int dy[] = {1, 0, -1, 0}; class FractalPicture { private: int x1, y1, x2, y2; bool inRec(int x, int y){ return x1 <= x && x <= x2 && y1 <= y && y <= y2; } public: double calc(int sx, int sy, int dir, int len){ double res = 0.0; if(len == 1){ int x = sx, y = sy; if(inRec(x, y)&&inRec(x+dx[dir], y+dy[dir])){ res += 1.0; for(int i=1;i<=3;i+=2){ if(inRec(x+dx[(dir+i)%4], y+dy[(dir+i)%4])){ res += 495/3.0; } } } } else { int x = sx, y = sy; for(int i=0;i