CF1313 C2. Skyscrapers (hard version)
C2. Skyscrapers (hard version)
题意:
求一个新的序列,使得其合最大,要求新的序列满足该序列的最大值左右两边(可以只有一边)呈非升序列。
思路:
单调栈
C1 n小模拟暴力O(n^3)也过了
C2是在C1的基础上优化。
我们遍历i,默认i为最小值,求左侧的面积(假设宽都为1)
再反向遍历求右侧每个i对应点的面积
将两个面积加起来-掉i那块的面积(不然的话会算两个i那块...
原创
2020-02-24 17:04:26 ·
552 阅读 ·
0 评论