首页 > 其他分享 >CF1901F Landscaping

CF1901F Landscaping

时间:2023-11-28 13:25:30浏览次数:33  
标签:frac max 线段 点集 Landscaping 纵坐标 凸壳 CF1901F

题意大概就是给你 \(n\) 个点\((0, a_0), (1, a_1), \cdots, (n - 1, a_{n - 1})\) ,用一根直线 \(l\) 覆盖这些点,要求所有点都在这条直线 \(l\) 之下,设 \(y_0, y_1\) 分别为 \(l\) 与 \(x = 0, x = n - 1\) 的交点纵坐标值,求 \(\min y_0 + y_1\) 。显然题目不可能这么弱智,题目还要求按照顺序依次将 \(a_i\) 修改成 \(b_i\), 在每一次修改后都要求出答案。

首先一个很显然的性质就是直线肯定是这个点集构成的上凸壳的某条线段延伸的,否则就很劣。然后我们画个图就发现如果我们选择的线段两个点都在 $ x = \frac{n - 1}{2}$ 的一侧的话,那旋转一下就变优了,所以这条线段不能要了。通过这两个性质,我们可以得到最终的直线就是点集构成的上凸壳的线段中与\(x = \frac{n - 1}{2}\) 相交的那一条。我们将在 \(x = \frac{n - 1}{2}\) 左侧的点的集合设为 \(L\), 右侧的设为 \(R\)。 设两点 \(x, y\) 的切线与 \(x = \frac{n - 1}{2}\) 的交点纵坐标大小为 \(\lambda(x, y)\)。 不难发现我们要找的那条线段与 \(x = \frac{n - 1}{2}\) 的交点纵坐标就等于 \(\max_{x \in L, y \in R} \lambda(x, y)\) ,否则他就不是凸包了。考虑咋求这东西,我们发现在处理 $ i \in [0, \frac{n - 1}{2})$ 的答案时, \([\frac{n - 1}{2}, n - 1]\) 的点集的高度都是 \(a\), 所以我们可以直接建出 \([\frac{n - 1}{2}, n - 1]\) 的上凸壳,然后左边的点查答案直接二分就完事了。询问的答案就是 \(b\) 的前缀max 和 \(a\)的后缀max 拼一下。 \([\frac{n - 1}{2}, n - 1]\) 的询问类似。

标签:frac,max,线段,点集,Landscaping,纵坐标,凸壳,CF1901F
From: https://www.cnblogs.com/luyiming123blog/p/17861715.html

相关文章

  • P3049 [USACO12MAR]Landscaping S
    这篇博客我要单独写!思想:贪心的把到当前位置先补齐假设:i,j,k,p是位置i  j  k  p少 多 少  多-------------------------------------------------......