单调栈模板
问题描述
长方形
小明今天突发奇想,想从一张用过的纸中剪出一个长方形。
为了简化问题,小明做出如下规定:
(1)这张纸的长宽分别为 n,mn,m。小明讲这张纸看成是由n\times mn×m个格子组成,在剪的时候,只能沿着格子的边缘剪。
(2)这张纸有些地方小明以前在上面画过,剪出来的长方形不能含有以前画过的地方。
(3)剪出来的长方形的大小没有限制。
小明看着这张纸,想了好多种剪的方法,可是到底有几种呢?小明数不过来,你能帮帮他吗?
思路
单调栈适合解决在一个连续区间内找左边和右边第一个比它小/大的元素,
原创
2021-08-18 17:15:38 ·
149 阅读 ·
0 评论