#P16859. [GKS 2021 #F] Star Trappers
[GKS 2021 #F] Star Trappers
题目描述
John 和 Ada 坐在一个小山丘的草地上。此刻是午夜,天空中满是星星。从遥远的地方看,天空就像一个二维平面,星星就像是平面上的点。Ada 非常喜欢蓝色的星星,她突然注意到一颗蓝色的星星,而天空中其余所有的星星都是白色的。她非常喜欢这颗蓝色的星星,以至于想要将它困住。于是她向 John 求助。
Ada 会告诉 John 蓝色星星的位置,而 John 必须将它困住。要困住它,John 需要用他的巨剑在天空中画出一个多边形,使得蓝色星星严格位于多边形内部(不在多边形边界上),并且该多边形的周长尽可能小。多边形的顶点必须是白色的星星。
尽管 John 非常厉害,他还是需要你的帮助。给定白星和蓝星的位置,你需要判断 John 能否困住蓝星,如果能,则找出他所用多边形的最小周长。
输入格式
输入的第一行给出测试用例的数量 。接下来有 个测试用例。
对于每个测试用例,第一行包含一个整数 ,表示天空中白星的数量。
接下来的 行,每行包含两个整数 和 。第 对整数表示第 颗白星的 和 坐标。
在这 行之后,还有一行,包含两个整数 和 ,表示蓝星的 和 坐标。
输出格式
对于每个测试用例,输出一行,格式为 Case #x: y,其中 是测试用例编号(从 开始), 是困住蓝星所用多边形的最小周长。如果 John 无法画出困住蓝星的多边形,则 应为 IMPOSSIBLE。
如果 与正确答案的绝对误差或相对误差在 以内,则认为正确。
2
2
0 0
5 0
2 2
3
0 0
5 0
0 5
1 1
Case #1: IMPOSSIBLE
Case #2: 17.071068
提示
在第一个测试用例中,只有两颗白星,因此无法画出任何多边形。
在第二个测试用例中,有三颗白星,因此只能画出一个多边形(一个三角形),如下图所示。结果发现,该三角形能够困住蓝星。该三角形的周长为 。
:::align{center}
:::
限制条件
内存限制: GB。
。
对于所有 ,。
。
没有两颗星星(包括蓝星)位置相同。
测试集 1
。
测试集 2
。
测试集 3
最多 个测试用例满足:
。
其余测试用例满足:
。
翻译由 DeepSeek V4 Pro 完成