前缀和差分
lengxuenong
这个作者很懒,什么都没留下…
展开
-
P6283 [USACO20OPEN]The Moo Particle S——单调栈或前后缀
题目来源: P6283 [USACO20OPEN]The Moo Particle S题目大意:给出一推坐标,连个点之间连线的斜率>=0即可合并到两点间的任意一个点上,问合并完,最后剩的点的最小个数。先将坐标按照第一关键字X,第二关键字Y排序。排序后,我们发现,一个点要与左边的点连通,需要左边有点的y值比当前点小,有右边的点连通,需要右边有点当前的y值大。方法一:维护从左到右的最小值,维护从右到左的最大值,找到与左右分离的点,则是一个新的连通块。方法二:我们发现最后分离的点,从左到右y值由小原创 2020-06-12 16:36:03 · 293 阅读 · 0 评论 -
P6146 [USACO20FEB]Help Yourself G--动态规划+集合+前缀和
题目来源先考虑的是转成树或者图,好麻烦。然后考虑的是类似线段覆盖的的处理,要分包含或连接、分离等情况,分离情况的处理理不清楚,借助了题解。将线段按照左端点排序,设到第i条线段 构成的时间复杂度为f[i].那么包含的情况包括1.不包含这条线段,那么为f[i-1];2.包含这条线段又分两种情况 增加的集合个数为f[i-1]2-1.增加了集合个数,但这个集合的复杂度与前面一样,所有增加的集合已经包含在前面的f[i-1]内2-2.增加了集合个数,同时复杂度增加。这种情况下,与前面的线段分离会增使其复原创 2020-05-27 11:20:43 · 214 阅读 · 0 评论 -
P6149 [USACO20FEB]Triangles S--离散化+前缀和
题目大意:找出平行于x,y轴边的三角形面积的两倍。枚举要n*n*n,超时,分析下,要两条直角边上对应应长度和的乘积,然后要前缀和处理。共有四种形态的三角形。原来想每种单独做,但遇到矩形还要处理重合,就参考题解了。1.将所有同一x或y的点用VECTOR连起来,并离散化和距离的前缀和。2.枚举每一个点xi,yi,如左上图所示,四种形态的三角形面积.以y轴为例分析,分为上半部分和下半部分,前缀和的求法如上图所示。同理针对x轴,左半部分和右半部分分别求出。参考代码:copy form洛谷题解原创 2020-05-23 10:13:18 · 455 阅读 · 1 评论 -
P6143 [USACO20FEB]Equilateral Triangles P——几何+二维前缀和
题目来源: P6143 [USACO20FEB]Equilateral Triangles P.先手工做这个题目,感觉要枚举,和每行的斜线有关系,但是想不出来。只好开始我的题解大法。本题的曼哈顿距离经过转换,可以发现下面的关系:设ABC可以构成等边三角形则AB=AC=BC,变幻后,AB=OA+OB,AC=OA+OC,BC=OB+OC,因此可以得出结论OA=OB=OC,且OA垂直OB;可...原创 2020-05-08 13:48:31 · 351 阅读 · 0 评论 -
P6006 [USACO20JAN]Farmer John Solves 3SUM G:二维前缀和
题目来源:[USACO20JAN]Farmer John Solves 3SUM G题目大意:找出任意区间三个数加起来和为0的个数。一开始想N3N^3N3;后来用个桶想&N^2$,还是有问题。原来设i<j<k,或k<i<j都统计的很糊涂。后来看题解才弄明白,设i<k<j,设sum[i][j]为i为起点,j为终点的情况下满足条件的个数,然后用二维前缀...原创 2020-03-01 11:07:30 · 437 阅读 · 0 评论