5152: 【单调栈】腾讯2021秋招&用友2022秋招-逛街

金币值:1 时间限制:3.000 s 内存限制:128 M
正确:45 提交:106 正确率:42.45% 命题人:
点赞量:0 收藏量:0 题目类型:程序 知识点: 单调栈 腾讯 用友

题目描述

小Q在周末的时候和他的小伙伴来到大城市逛街,一条步行街上有很多高楼,共有n座高楼排成一行。

小Q从第一栋一直走到了最后一栋,小Q从来都没有见到这么多的楼,所以他想知道他在每栋楼的位置处能看到多少栋楼呢?

(当前面的楼的高度大于等于后面的楼时,后面的楼将被挡住)

输入格式

输入为一个数组,表示每一栋楼的高度

wi 1 <= n <= 100000 

1 <= wi <= 100000

输出格式

输出为一个长度为n的数组,表示在第i位置能够看到的楼数。

输入样例    复制

[5,3,8,3,2,5]

输出样例    复制

[3,3,5,4,4,4]

提示

当小Q处于位置3时,他可以向前看到位置2,1处的楼,向后看到位置4,6处的楼,加上第3栋楼,共可看到5栋楼。 

当小Q处于位置4时,他可以向前看到位置3处的楼,向后看到位置5,6处的楼,加上第4栋楼,共可看到4栋楼。