、

AtCoder-Beginner-Contest-472

F Centroid of a Slice

题意

顺序给出一个凸多边形,\(Q\) 次询问给两个不相邻顶点,求 \(u\to v\) 连一条边,这个向量右边(包括这两点)围成的凸多边形重心坐标。

思路

考虑我们学过的三角形重心坐标就是 \((\frac{x_1+x_2+x_3}{3},\frac{y_1+y_2+y_3}{3})\),那么如果我们将这个凸多边形做三角剖分,那么可以想到坐标就应该是这几个三角形按照面积做带权平均,以 \(x\) 坐标为例,设面积为 \(A_i\),考虑随便选择一个顶点,那么对于 \((x_i,y_i),(x_{i+1},y_{i+1})\) 和这个顶点就可以剖分这个凸多边形,那么我们不妨平移这个顶点到 \((0,0)\),那么按照我们需要的这几个公式最终的答案就是在顶点是 \((0,0)\) 的情况下再平移顶点,那么我们考虑这个公式应该不管顶点在哪里都是正确的。

那么我们的 \(A_i=\frac{1}{2}(x_iy_{i+1}-x_{i+1}y_i),P^x_i=\frac{x_i+x_{i+1}}{3}\),那么结果就应该是:

\[\frac{1}{6A}\sum_{i=1}^n(x_i+x_{i+1})(x_iy_{i+1}-x_{i+1}y_i) \]

然后就做完了,考虑面积和这个后面的东西都是可以直接前缀和维护然后把新加的边的贡献算上即可。

G Cascading Grid

题意

有一个网格,每个单元格都写有 \(1,-1,0\) 中的一个。任意次操作:

  • 选择一个不是 \(0\) 的位置,将所有可以只通过向下向左右能够不经过 \(0\) 走到的点置为 \(0\)。

最大化最后的和。

思路

你考虑如果选了一个点,那么这一行包括这个点的连续段都会被选上,然后在下一行和这个段有交的段也会被选上。那么这就是一个最大权闭合子图模型。我们考虑如果一个段没有清空,那么它上一行和它有交的段也不能清空,然后就建模即可。

posted @ 2026-09-24 14:42  tanghg  阅读(9)  评论(0)    收藏  举报