CF838E Convex Countour
题目描述
给定一个严格凸多边形,共有 $n$ 个顶点。保证不存在三点共线。你希望在多边形的顶点上取一条最大的不相交路径,每个点最多访问一次。
更具体地,你的路径可以表示为一串互不重复的多边形顶点序列。你的路径由按序排列的相邻顶点之间的直线段组成。除了路径序列中的顶点外,这些线段不能相交或接触。
给定这个多边形,输出这条最大长度的不相交路径,每个点最多访问一次。
输入格式
输入的第一行为一个整数 $n$($2 \leq n \leq 2500$),表示点的数量。
接下来的 $n$ 行,每行包含两个整数 $x_i,y_i$($|x_i|, |y_i| \leq 10^9$),表示第 $i$ 个顶点的坐标。
保证这些点是按顺时针顺序给出的。
输出格式
输出一个浮点数,表示最长的不相交路径的长度,每个顶点最多访问一次。
如果你的答案与标准答案的绝对误差或相对误差不超过 $10^{-9}$,则被认为是正确的。更具体地说,设你的答案为 $a$,标准答案为 $b$,则在满足下式时视为正确答案:
$$
\frac{|a-b|}{\max(1,|b|)} \leq 10^{-9}
$$
说明/提示
一种最优解为依次访问顶点 0、1、3、2。
由 ChatGPT 5 翻译