使用单调栈算法。
对于第 i 个建筑,高度为 hi,它向右看的安全视野距离规则是:
如果右侧存在第一个高度严格大于 hi 的建筑,则距离为这两个建筑的下标差; 如果右侧不存在更高的建筑,则距离为右侧剩余建筑数量,即 n−1−i。
在城市规划中,建筑师需要分析建筑物之间的视野关系。给出一条街道上的一排建筑物,每个建筑物有一定的高度。对于每个建筑物,我们定义一个安全视野距离:从该建筑物向右看,能看到的建筑物的数量。
一个建筑物 A 能够看到另一个建筑物 B 的条件是:
By signing up a CodeFun2000 universal account, you can submit code and join discussions in all online judging services provided by us.