loj#P6855. 「ICPC World Finals 2021」艺术馆警卫员

「ICPC World Finals 2021」艺术馆警卫员

题目描述

你当地的艺术馆即将举办一个激动人心的新展览,这个展览将展出各大世界知名艺术家的雕塑,艺术馆预计将吸引成千上万的参观者。不幸的是,展览也可能吸引到不参观的参观者,即打算盗窃艺术品的小偷。过去,艺术馆负责人并不太担心这个问题,因为说实话,他们的永久收藏品并不值得偷窃。

艺术馆由房间组成,展览中所有雕塑都会放在各自不同的房间。每个房间有一个警卫和监控作品的报警器。当一个报警器响的时候,警卫会从岗哨所在位置跑到(不会离开房间)一个可以直接看到雕塑的位置。

为了找到警卫的最佳站位,艺术馆负责人想知道警卫跑到某个能看到的雕塑的位置需要多长时间。他们希望你能提供帮助!

每个房间都在单独一层,墙壁可以用一个简单多边形来近似描述。警卫和雕塑的位置是严格在多边形内且不同的两点。雕塑是圆形的,半径小得可以忽略不计(但是是一个正数)。为了确定雕塑仍然存在,警卫需要至少能看到它的一半。

在每个样例中,警卫从左边的蓝色方块开始,而雕塑位于右边的红色圆圈处。蓝色虚线表示警卫的最佳移动路径。一旦警卫到达绿色钻石标记的位置,就可以看到一半的雕塑。

输入格式

第一行包含一个整数 n (3n100)n\ (3\le n\le 100),表示这个多边形的顶点个数。接下来 nn 行,每行两个整数 xxy (0x,y1 000)y\ (0\le x,y\le 1\ 000),按逆时针顺序给出多边形的顶点坐标。接下来一行包含两个整数 xgx_gygy_g,表示警卫所在位置。最后一行两个整数 xsx_sysy_s,表示雕塑的中心位置。多边形是简单的,也就是说,它的顶点互不相同,并且除了相邻两边共顶点外,多边形没有两条边相交或共顶点。此外,没有两条相邻的边是共线的。

输出格式

输出警卫移动到可以看到至少一半雕塑位置的最短距离。你的答案与标准答案间的绝对误差或相对误差不能大于 10610^{-6}

8
0 0
20 0
20 30
60 30
60 0
80 0
80 50
0 50
10 10
70 10

58.137767414994535

11
0 0
4 0
4 1
5 1
5 0
7 0
7 2
3 2
3 1
2 2
0 2
1 1
6 1

2.0