SP5637 ISUN1 - LL and ErBao
题目描述
在 LL 和 ErBao 还小的时候,他们每天都乐此不疲地玩跳橡皮筋。然而,有一天 HH 来搅局了,他有时会朝他们扔石头,有时会推他们一下,让 ErBao 哭得伤心欲绝。看到这种情况,LL 终于忍无可忍,决定教训一下 HH。
地面上有 $n$ 棵树(视作一些点),LL 想用他的橡皮筋把所有的树围起来形成一个大圈,然后把 HH 引进圈里,再向他扔石头。在策划如何把 HH 引入圈套之前,LL 想知道这个橡皮圈的周长是多少。
不过,LL 发现这并不简单,因为他们的活动区域和这些树是围在一个更大的围栏(一个由 $m$ 个顶点组成的简单多边形)之内的。因此,橡皮筋不能越过围栏。现在,请你帮 LL 计算出这个橡皮圈的周长。
输入格式
输入包含多个测试用例,以 EOF 结束。每个测试用例的第一行包含两个整数:$m$,$n$。其中 $(3 \le m \le 500, 0 \le n \le 500)$。
接下来 $m$ 行,每行包含两个整数:$X_{fi}, Y_{fi}$,表示围栏的第 $i$ 个顶点的坐标,这些顶点按照逆时针顺序排列。
然后接下来 $n$ 行,每行包含两个整数:$X_{ti}, Y_{ti}$,表示第 $i$ 棵树的坐标。
保证所有的树都严格位于围栏内部,且围栏不会与自身相交或接触。坐标的绝对值不超过 $10000$。
输出格式
对于每个测试用例,输出橡皮圈的周长,精确到小数点后三位。
**本翻译由 AI 自动生成**