#P1584. A Round Peg in a Ground Hole
A Round Peg in a Ground Hole
本题没有可用的提交语言。
描述
DIY家具公司专门提供自己组装的家具套件。通常情况下,一块块木头是用木栓连接在一起的,木栓可以插入每块木板上预先切好的孔里。钉有一个圆形的横截面,因此打算适合在一个圆孔内。
最近工厂运行的电脑桌出现了故障,原因是一台自动磨床编程错误。结果是一个不规则形状的洞,而不是预期的圆形,实际上是一个不规则的多边形。你需要弄清楚这些桌子是否需要报废,或者是否可以通过用木屑和胶水的混合物填充一部分洞来回收它们。
有两个问题。首先,如果孔包含任何突起(即,如果孔中存在任何两个内部点,如果通过线段连接,该线段将穿过孔的一个或多个边缘),那么填充孔在结构上就不会足够健全,无法在正常应力下支撑木栓。其次,假设孔的形状合适,它必须足够大,以允许插入的钉子。因为这块木头上的洞必须与其他木头上相应的洞匹配,所以钉子必须安装的精确位置是已知的。
编写一个程序来接受对钉和多边形孔的描述,并确定孔是否不正确,如果不是,则钉是否适合所需的位置。每个洞被描述为一个多边形,顶点为, ,…, 。当时,多边形的边为到…N−1和到
Input
Input由一系列分段描述组成。每片描述由以下数据组成:
Line 1 < nVertices > < pegRadius > < pegX > < pegY >
多边形顶点数,n (integer)
peg (real)半径
peg (real) X和Y位置
n Lines < vertexX > < vertexY >
在每一个顶点的一行上,按顺序列出顶点的X和Y位置。输入的结束由若干小于3的多边形顶点表示。
输出
对于每件描述,打印单行包含字符串:
如果孔含有凸起孔是不健康的
如果孔不含有凸起并且PEG将适合在指示位置插入孔
如果孔不包含凸起但PEG将不适合在指示位置插入孔
5 1.5 1.5 2.0
1.0 1.0
2.0 2.0
1.75 2.0
1.0 3.0
0.0 2.0
5 1.5 1.5 2.0
1.0 1.0
2.0 2.0
1.75 2.5
1.0 3.0
0.0 2.0
1
HOLE IS ILL-FORMED
PEG WILL NOT FIT