SP2152 FRACTAL - Hilbert Curve

题目描述

希尔伯特鼹鼠是一种非常稀有的小鼹鼠。第一只也是唯一一只是在大卫·希尔伯特的后院发现的。这种鼹鼠生活在地下的庞大洞穴中,洞穴的边界呈现为一种 $n$ 阶的希尔伯特曲线(H$_{n}$)。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/SP2152/123861f388566636adc0287ed600e2b420a8c5de.png) 图 1. 从 1 阶到 4 阶的希尔伯特曲线示例。 希尔伯特曲线的定义如下:H$_{1}$ 是一个顶边开口的单位正方形(如图 1(a)所示)。H$_{n}$ 是由四个 H$_{n-1}$ 组成:左下和右下部分保持原状,左上部分逆时针旋转 90 度;右上部分顺时针旋转 90 度。这些小的部分通过三条单位长度的线段连接在一起(如图 1(b)、(c)、(d)所示)。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/SP2152/9acf263154d2789edc524f3998fba42a1f2f1f90.png) 图 2. 正在被水填充的洞穴。 为了消除鼹鼠,希尔伯特先生尝试用水填满整个洞穴(如图 2)。然而,洞穴中的空气会阻止水完全填满洞穴。在这个问题中,我们假设空气和水都是不可压缩的,且不会穿过洞穴的边界泄漏。你的任务是计算出被水填满的洞穴总面积。 请注意,水面只有在严格高于障碍物时,才能流过障碍物。参考图 3,可以对这个现象有更深入的理解。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/SP2152/cc723ad428b3c52d41d190959923b095f391266e.png) 图 3. 更多被水填充的洞穴示例。

输入格式

输入包括多组测试数据。对于每组数据: 第一行包含两个整数:$n$ 和 $\alpha$,分别表示希尔伯特曲线的阶数和地面的倾斜角度(单位为度)(满足 $1 \le n \le 12$,$0 \le \alpha < 90$)。 输入以 EOF 结束。

输出格式

对于每组测试数据,输出一行包含一个实数,表示被水填满的洞穴总面积。要求答案的相对误差不超过 $10^{-6}$。 **本翻译由 AI 自动生成**