#P13623. [ICPC 2024 APC] Symmetric Boundary

[ICPC 2024 APC] Symmetric Boundary

题目描述

对称图形是美丽的,它们也是本题的主题。一个二维平面区域是凸的,当且仅当对于区域内的任意一对点 ppqq,连接 ppqq 的线段完全包含在该区域内。此外,一个二维平面区域是点对称的,当且仅当将该区域围绕某个特定点旋转 180180 度后,旋转后的区域与原始区域完全重合。

给定一个二维平面上的凸多边形,它有 nn 个顶点,按逆时针顺序从 11nn 编号。顶点 ii 的坐标为 (xi,yi)(x_i, y_i)。没有三个顶点共线。

请判断是否存在一个凸形的、点对称的区域,其边界包含了所有这 nn 个顶点。如果存在一个或多个这样的区域,请计算其中面积最小的区域的面积。

输入格式

输入的第一行包含一个整数 nn (3n303 \le n \le 30)。 接下来的 nn 行,每行包含两个整数。第 ii 行包含 xix_iyiy_i (0xi,yi10000 \le x_i, y_i \le 1000)。

保证给定的多边形是凸的,其顶点按逆时针顺序给出,并且没有三个顶点共线。

输出格式

如果存在一个或多个这样的区域,输出其中的最小面积。输出的相对误差必须在 10910^{-9} 以内。

如果不存在这样的区域,则输出 1-1

4
0 0
10 0
8 9
4 9
90.0
8
8 10
2 9
0 8
0 2
2 0
8 0
10 2
10 8
-1
6
231 77
359 20
829 124
998 461
941 735
879 825
486567.9669655848

提示

样例解释

图 I.1 将样例输入中的顶点以黑点的形式展示了出来。对于样例输入 #1 和 #3,阴影部分代表了可能实现的最小面积区域。