J题:Symmetrical Painting (题解在代码里面)
1 /* 2 给你n个底下宽为1的矩形 3 左下角(i-1,Li),右上角(i,Ri) 4 找一条线l平行于x轴,让这些矩形根据l对称 5 不对称的部分删去。问最大的面积 6 7 8 首先,我们可以知道的是我们假设这个 9 线在最底下,慢慢的从最底下往最上面10 走,观察一下这个函数值到底为什么会11 增大,为什么会减小。12 (这是一种比较常见的思想,当我们遇到13 一个在一个坐标轴上运动的函数或者物体14 时可以通过分析它不断朝某个方向变化时15 的变化值)1617 这个函数变大的情况就是下面的对称轴比上面18 少,然后它如果往上面走,就会出现一种情况19 它不断走着走着会变大。20 但是在某些关键的位置会取得极值,这个是很好21 分析的,他一定是停在上下届或者是某个矩形的22 中分点。232425 接下来就可以按照算贡献的做法来做了,从小到26 大排序。。。(然后从小的往大的走)27 维护一个a就是靠近中位线的数量,维护一个b就是28 远离中位线的数量29 算一下贡献就可以了30 这个维护算是比较精妙的3132 这段文字来自33 https://www.cnblogs.com/zhuyou/p/11365730.html34 作者:zhuyou35 首先可以把