A5709.植物

入门

官方

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

小花是一个才华横溢的植物研究者。在她的研究中,她特别关注植物的生长规律。

在一次实验中,小花种植了一排植物,并每天观察它们的高度。她注意到,每棵植物的生长速度是不同的,有的植物成长很快,有的则相对较慢。

为了了解这些植物之间的相互关系,小花决定寻找每棵植物右边第一棵高度比它更高的植物的位置。

经过一番思考,小花设计了一个方法。她的程序将读取给定的植物高度序列,并计算出每棵植物右侧第一个更高植物的位置。

即给出一个长度为 nn 的植物高度序列 AA,根据规则求数组 BB

其中 BiB_i 表示第一个满足 j>ij>iAj>AiA_j > A_i 的下标 jj,没有找到这一个下标 BiB_i 就为 00

通过这种方式,小花希望能够更深入地了解这些植物的生长规律。

最后输出数组 BB

输入格式

第一行包含一个整数 nn,表示植物高度序列 AA 的长度。

第二行包含 nn 个整数,表示植物的高度数组每个元素的大小。

输出格式

输出 nn 个整数,表示符合要求的数组BB

输入输出样例

  • 输入#1

    6
    2 5 3 7 1 8

    输出#1

    2 4 4 6 6 0

说明/提示

数据范围:1n1051Ai1051 \leq n \leq 10^5,1 \leq A_i \leq 10^5

例如,对于数组 A=[2,5,3,7,1,8]A=[2, 5, 3, 7, 1, 8],我们可以得到数组 B=[2,4,4,6,6,0]B=[2, 4, 4, 6, 6, 0]。解释如下:

对于 A1=2A_1=2,右侧第一个比它大的数是 A2=5A_2=5,所以 B1=2B_1=2

对于 A2=5A_2=5,右侧第一个比它大的数是 A4=7A_4=7,所以 B2=4B_2=4

对于 A3=3A_3=3,右侧第一个比它大的数是 A4=7A_4=7,所以 B3=4B_3=4

对于 A4=7A_4=7,右侧第一个比它大的数是 A6=8A_6=8,所以 B4=6B_4=6

对于A5=1A_5=1,右侧不存在比它大的数,所以B5=6B_5=6

对于A6=8A_6=8,右侧不存在比它大的数,所以B6=0B_6=0

你需要根据给定的数组AA,计算出数组BB并输出。

首页