P16979 [NWERC 2017] 字形识别 / Glyph Recognition

题目背景

译自 [Northwestern Europe Regional Contest (NWERC) 2017](http://2017.nwerc.eu) Problem G。 原题许可协议为 CC BY-SA。

题目描述

你是一名考古学家,正在一处发掘现场工作。你的团队发现了数百块泥板,上面写有某种古代语言的字形。人们对这种语言了解还不多,但你知道它一共只有六种不同的字形,每一种都是一个正多边形的形状,并且有一个顶点指向右侧(见下面图 1)。每个多边形只有边界被刻在泥土上。 :::align{center} ![](https://cdn.luogu.com.cn/upload/image_hosting/86fgrdt6.png) ::: 图 1a:六种字形。 :::align{center} ![](https://cdn.luogu.com.cn/upload/image_hosting/fx2a5uku.png) ::: 图 1b:第一个样例输入。 :::align{center} ![](https://cdn.luogu.com.cn/upload/image_hosting/hvzcw7ct.png) ![](https://cdn.luogu.com.cn/upload/image_hosting/zliepzs6.png) ::: 图 1c/1d:将三角形和六边形拟合到第一个样例。三角形的得分更高。 你想立刻开始分析这种语言,因此需要把泥板上的文字转换成机器可读的格式。理想情况下,你会使用 OCR(光学字符识别)工具,但你的笔记本上没有安装这样的工具,而发掘现场也没有互联网连接。 因此,你设计了自己的方案来数字化这些古代文字:对于泥板上的每一个字形,你首先找出若干位于刻痕区域中的采样点,也就是位于多边形边界上的点。根据这些采样点,你再计算六种字形各自的得分,并把得分最高的字形标记为识别结果。 对于给定的角数 $k$($3 \leq k \leq 8$),得分按如下方式计算。将两个正 $k$ 边形拟合到采样点上,一个在内部,一个在外部,并满足以下条件: - 每个多边形都以原点为中心,也就是说所有顶点到 $(0,0)$ 的距离相等。 - 每个多边形都有一个顶点位于正 $x$ 轴上。 - 内部多边形是在不包含任何采样点的前提下最大的这种多边形。 - 外部多边形是在包含所有采样点的前提下最小的这种多边形。 一个例子见图 1c/1d。对于这个 $k$ 值,得分为 $\frac{A_\text{inner}}{A_\text{outer}}$,其中 $A_\text{inner}$ 和 $A_\text{outer}$ 分别为内部多边形和外部多边形的面积。 给定一组采样点,找出得分最高的字形。

输入格式

输入包含: - 一行一个整数 $n$($1 \leq n \leq 1000$),表示采样点数量。 - 接下来 $n$ 行,每行两个整数 $x,y$($-10^6 \leq x,y \leq 10^6$),表示坐标为 $(x,y)$ 的一个点。 没有采样点位于原点,且所有点互不相同。

输出格式

Output the optimal number of corners $k$ ($3 \le k \le 8$), followed by the score obtained for that value of $k$. Your answer will be accepted if the absolute error does not exceed $10^{-6}$. If several values of $k$ result in a score that is within $10^{-6}$ of the optimal score, any one of them will be accepted.

说明/提示

【数据规模与约定】 对于所有数据,满足 $1 \leq n \leq 1000$,$-10^6 \leq x,y \leq 10^6$。没有采样点位于原点,且所有采样点互不相同。答案允许绝对误差不超过 $10^{-6}$。