著名的手机网络运营商Totalphone 修建了若干基站收发台,以用于把信号网络覆盖一条新建的高速公路。因为Totalphone 的程序员总是很马虎的,所以,基站的传功功率不能独立设置,只能将所有新基站的功率设置为一个相同的值。为了让能源的消耗尽量少,公司希望知道公路中任意点到最近基站距离的最大值。
输入的第一行包括两个整数N(1<=N<=10^6)和L(1<=L<=10^9)分别表示基站收发台的数量和高速公路的长度。接下来N行,每行包含一对整数xi,yi(-10^9<=xi,yi<=10^9)描述一个基站的坐标。所有给出的点都互不相同。点按照x坐标不下降排列。如果两个点的x坐标相同,那么它们之间按照y坐标的升序排列。
高速公路是一条从(0,0) 到(L,0) 的直线线段。
先说说
考虑到只有两点之间中垂线与公路交点(或公路端点)才有可能贡献。 我们利用一个单调栈,维护相邻的点之间的中垂线与公路交点的横坐标单调递增, 最后扫一遍栈内元素得出答案。 如图,那么
1.卡常 1)求交时请一步得解,不要用什么向量求交。 2)读入优化。
新闻热点
疑难解答