QOJ.ac

QOJ

시간 제한: 3.0 s 메모리 제한: 1024 MB 총점: 100

#18596. Svjetlost

통계

在平面上,如果我们有一个凸多边形 $P$,并在多边形外部的一个点 $T$ 处放置一个光源,它会照亮 $P$ 的一些边——如果 $A$ 和 $B$ 是多边形的两个相邻顶点,那么当三角形 $\triangle TAB$ 的面积不为零,且该三角形不与多边形内部相交时,边 $AB$ 就会被照亮。多边形的亮度是所有被照亮边的长度之和,而多边形的最大亮度是指我们选择一个最优的点 $T$ 时所能达到的最大可能亮度。 点 $T$ 与多边形之间的距离可以是任意的,且点 $T$ 的坐标不一定需要是整数。

图 4:来自第二个样例的凸多边形 $P, P_1, P_2$ 和 $P_3$,图中标记了最优亮度。

给你一个凸多边形 $P$,其顶点依次为点 $A_1, A_2, \dots, A_n$。多边形会经过 $q$ 步修改——在第 $j$ 步中,我们删除一个现有的多边形顶点,并得到一个新的多边形 $P_j$。更具体地说,多边形 $P_j$ 的顶点是 $P$ 中尚未被删除的顶点,且它们的顺序与在多边形 $P$ 中的顺序相同。易知每个多边形 $P_j$ 也是凸多边形。

求多边形 $P$ 以及得到的每个多边形 $P_1, P_2, \dots, P_q$ 的最大亮度。

输入格式

输入的第一行包含一个正整数 $n$——初始多边形 $P$ 的顶点数。 接下来的 $n$ 行中,第 $j$ 行包含两个整数 $x_j$ 和 $y_j$($-10^9 \le x_j, y_j \le 10^9$)——顶点 $A_j$ 的坐标。 下一行包含一个整数 $q$($0 \le q \le n - 3$)——修改的步数。 接下来的 $q$ 行中,第 $j$ 行包含一个整数 $k_j$($1 \le k_j \le n$),表示在第 $j$ 步中我们删除顶点 $A_{k_j}$。 你可以假设多边形 $P$ 中的顶点 $A_j$ 是按逆时针方向给出的,不存在两条连续的边共线,且所有下标 $k_j$ 互不相同。

输出格式

你必须输出 $q + 1$ 行。第一行必须包含初始多边形 $P$ 的最大亮度,接下来的 $q$ 行中,第 $j$ 行必须包含在第 $j$ 步后得到的多边形 $P_j$ 的最大亮度。 对于输出的每一行,与官方答案的绝对误差或相对误差在 $10^{-5}$ 以内将被接受。

子任务

子任务 分值 数据范围
1 12 $n \le 100$
2 14 $n \le 2000$
3 14 $n \le 100\,000, q = 0$
4 29 $n \le 100\,000$,对于每个 $j = 1, \dots, q - 1$ 满足 $k_j < k_{j+1}$
5 31 $n \le 100\,000$

样例

输入格式 1

4
0 0
10 0
10 10
0 10
1
2

输出格式 1

20.000000
24.142136

输入格式 2

6
2 2
4 0
6 0
8 2
8 4
2 4
3
1
4
3

输出格式 2

10.828427
11.300563
10.944272
11.656854

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.