杰出的西伯利亚科学家因其题为《腰围与反腰围》("Waist and Antiwaist")的研究荣获了搞笑诺贝尔解剖学奖。正如突破性科学成就经常发生的那样,这一新想法开始渗透到其他科学和技术领域。事实证明,反腰围的概念在工程中非常有用:它能够用来寻找结构中最耐用的部分。然而,存在一个问题:工程师们目前还没有一个程序来寻找三维实体中的反腰围。
让我们考虑一个三维实体。我们可以用任意水平面 $z = \text{const}$ 对该实体进行平面截取。反腰围(antiwaist)是指截面面积最大的水平截面。
三维实体是三维空间中的一个闭合正则点集。它不能包含无限薄的元素。一个实体由其边界定义,边界以三角剖分的形式给出。
三角剖分以索引格式提供:包含一个顶点数组和一个三角形数组。所有顶点都具有整数坐标。所有顶点互不相同。每个三角形由其顶点定义:给出它们在全局顶点数组中的索引。一个三角形的三个索引互不相同。每个三角形都具有非零的表面积。从实体外部看时,三角形的顶点索引按逆时针顺序排列。
由于三角剖分包围了一个三维实体,因此它没有自交和自接触。如果两个三角形有两个公共顶点,它们可以共享一条线段;如果有一个公共顶点,它们可以共享一个点。它们不能有任何其他公共点。不存在非流形(non-manifold)的边或顶点,即:每条边恰好属于两个三角形;包含某个顶点的三角形集合通过它们的边连接成一个单一的环。实体可以是未连通的,也可以包含空腔。
输入格式
输入的第一行包含两个整数:$V$ — 顶点数量,$T$ — 三角形数量($4 \le V, T \le 200\,000$)。
接下来的 $V$ 行描述顶点。每行包含三个整数,分别表示顶点的 $x$、$y$ 和 $z$ 坐标。剩下的 $T$ 行描述三角形。每行包含三个整数,表示该三角形顶点的索引。顶点按描述的顺序从 $0$ 开始编号。
坐标的绝对值不超过 $500\,000$。使用右手坐标系。
输出格式
在输出的第一行中输出找到的反腰围。输出两个实数:截面的 $z$ 坐标和该截面的面积。如果存在多个具有最大面积的水平截面,输出其中任意一个的 $z$ 坐标。
建议以最大精度输出实数。输出截面面积的绝对或相对误差不得超过 $10^{-8}$。
样例
最后两个样例的输入数据未在下方完整显示。它们可以在样例存档中找到,该存档可在题目旁下载。
输入样例 1
6 8 1 0 0 -1 0 0 0 1 0 0 -1 0 0 0 1 0 0 -1 2 0 5 1 4 2 0 2 4 5 0 3 1 3 4 3 1 5 2 5 1 4 3 0
输出样例 1
0 2
输入样例 2
6 8 0 0 0 2 0 0 0 1 0 0 0 1 1 0 1 0 2 1 1 0 2 4 5 3 0 1 3 3 1 4 3 5 0 5 2 0 4 1 5 5 1 2
输出样例 2
0.5 1.5
输入样例 3
32 60 ... The complete data are in the samples archive!
输出样例 3
0.7913756716346761 5
输入样例 4
896 1788 ... The complete data are in the samples archive!
输出样例 4
-3318.6080203949518 4003775.6378878844
说明
在第一个样例中,该实体是一个以原点为中心的正八面体,其所有顶点都位于坐标轴上。最大截面面积在中间截面 $z = 0$ 处取得,该截面是一个边长为 $\sqrt{2}$ 的正方形。在第二个样例中,最大截面同样在 $z$ 的中间位置取得。在第三个样例中,有一个由六个立方体突起组成的十字形。最大面积的截面在 $0 \le z \le 1$ 处取得,是一个平面十字形。在最后一个样例中,该实体是一个人体。你可以看到人类反腰围的通常位置。
下面提供了样例测试的插图。
样例测试插图