CF385D Bear and Floodlight

题目描述

有一天,一只熊住在 $Oxy$ 轴上。它害怕黑暗,所以夜晚时不能走在没有被照亮的平面点上。有一天,这只熊想夜间从他家 $(l,0)$ 沿着长度为 $(r-l)$ 的线段走到朋友家 $(r,0)$。当然,如果他想完成这次行走,该线段上的每个点都必须被照亮。因此,熊在半夜打电话向他的朋友请求一个很细腻的帮助。 $Oxy$ 轴上有 $n$ 盏探照灯。第 $i$ 盏探照灯位于点 $(x_i,y_i)$,可以以该点为顶点照亮平面上一个角度不超过 $a_i$ 度的扇形区域。熊请求他的朋友转动探照灯,使得他(熊)可以在沿该线段行走时能离开自己家最远。他的好朋友答应了他的请求。在准备的同时,熊想知道:他最多能离开自己家多远?请帮他计算一下这个距离。 假设平面上没有障碍物,也没有其他光源。熊的朋友在熊走路的过程中不能再转动探照灯。假定所有探照灯都调整到合适位置后,熊去散步,他的朋友就去睡觉。

输入格式

第一行包括三个用空格分隔的整数 $n$、$l$、$r$,$1 \leq n \leq 20$,$-10^5 \leq l \leq r \leq 10^5$。接下来的 $n$ 行中,第 $i$ 行包含三个用空格分隔的整数 $x_i$、$y_i$、$a_i$,$-1000 \leq x_i \leq 1000$,$1 \leq y_i \leq 1000$,$1 \leq a_i \leq 90$,描述一盏探照灯。 注意,可能有两盏探照灯在平面上的同一个点。

输出格式

输出一个实数,表示题目的答案。如果你的答案的相对或绝对误差不超过 $10^{-6}$,则被视为正确。

说明/提示

对于第一个样例,可能的一种方案如下: ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF385D/70cd74581588ecc939447891194dd426bcc1962c.png) 对于第二个样例,唯一的一种方案如下: ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF385D/6d28a59da2dde7e6425608e1f0cdf10b62cece79.png) 对于第三个样例,唯一的一种方案如下: ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF385D/10b4dd48817911ff77f858eb6a9fd18802c09260.png) 由 ChatGPT 5 翻译