P4179 [CQOI2010] 鼹鼠

题目描述

Hilbert鼹鼠住在Hilbert地洞里——地洞的边界是一条$n$阶Hilbert曲线${H_n}$。Hilbert曲线的定义如下:${H_1}$是一个上端缺口的单位正方形;$H_n$由四份${H_n}-1$组成,其中左下和右下两份没有任何变化,而左上的那一份逆时针旋转了90度,而右上的那一份顺时针旋转了90度。这四份$H_n-1$用三条单位长度的线段连接起来构成了$H_n$。$H_1$~$H_4$如下图所示: ![](https://cdn.luogu.com.cn/upload/image_hosting/0vif0fh6.png) 你想捉一只Hilbert鼹鼠来玩,所以往地洞里使劲倒水想把它们赶出来。不过,由于地洞里有空气,无论你怎么倒水,有些地方总是淹不到的(假设水和空气都不可压缩)。输入Hilbert曲线 ![](https://cdn.luogu.com.cn/upload/image_hosting/aaj85oki.png) 的阶数 $n$ 和地面的倾斜角 $α$ ,你的任务是计算能淹没到的面积。 注意,只有当水位严格高于一个障碍物时,水才能越过它往下流。更多细节可以参考下面的例子。 ![](https://cdn.luogu.com.cn/upload/image_hosting/bbvmrpvd.png)

输入格式

输入仅包含两个整数$n$,$α$。

输出格式

输出仅一行,即被淹没的面积,输出保留小数点后6位。

说明/提示

$rt,n