A1517 | 植物
来源官方 / 2023
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
小花是一个才华横溢的植物研究者。在她的研究中,她特别关注植物的生长规律。
在一次实验中,小花种植了一排植物,并每天观察它们的高度。她注意到,每棵植物的生长速度是不同的,有的植物成长很快,有的则相对较慢。
为了了解这些植物之间的相互关系,小花决定寻找每棵植物右边第一棵高度比它更高的植物的位置。
经过一番思考,小花设计了一个方法。她的程序将读取给定的植物高度序列,并计算出每棵植物右侧第一个更高植物的位置。
即给出一个长度为 $n$ 的植物高度序列 $A$,根据规则求数组 $B$。
其中 $B_i$ 表示第一个满足 $j>i$ 且 $A_j > A_i$ 的下标 $j$,没有找到这一个下标 $B_i$ 就为 $0$。
通过这种方式,小花希望能够更深入地了解这些植物的生长规律。
最后输出数组 $B$。
在一次实验中,小花种植了一排植物,并每天观察它们的高度。她注意到,每棵植物的生长速度是不同的,有的植物成长很快,有的则相对较慢。
为了了解这些植物之间的相互关系,小花决定寻找每棵植物右边第一棵高度比它更高的植物的位置。
经过一番思考,小花设计了一个方法。她的程序将读取给定的植物高度序列,并计算出每棵植物右侧第一个更高植物的位置。
即给出一个长度为 $n$ 的植物高度序列 $A$,根据规则求数组 $B$。
其中 $B_i$ 表示第一个满足 $j>i$ 且 $A_j > A_i$ 的下标 $j$,没有找到这一个下标 $B_i$ 就为 $0$。
通过这种方式,小花希望能够更深入地了解这些植物的生长规律。
最后输出数组 $B$。
输入格式
第一行包含一个整数 $n$,表示植物高度序列 $A$ 的长度。
第二行包含 $n$ 个整数,表示植物的高度数组每个元素的大小。
第二行包含 $n$ 个整数,表示植物的高度数组每个元素的大小。
输出格式
输出 $n$ 个整数,表示符合要求的数组$B$。
输入输出样例
输入 #1
6 2 5 3 7 1 8
输出 #1
2 4 4 6 6 0
数据范围:$1 \leq n \leq 10^5,1 \leq A_i \leq 10^5$。
例如,对于数组 $A=[2, 5, 3, 7, 1, 8]$,我们可以得到数组 $B=[2, 4, 4, 6, 6, 0]$。解释如下:
对于 $A_1=2$,右侧第一个比它大的数是 $A_2=5$,所以 $B_1=2$。
对于 $A_2=5$,右侧第一个比它大的数是 $A_4=7$,所以 $B_2=4$。
对于 $A_3=3$,右侧第一个比它大的数是 $A_4=7$,所以 $B_3=4$。
对于 $A_4=7$,右侧第一个比它大的数是 $A_6=8$,所以 $B_4=6$。
对于$A_5=1$,右侧不存在比它大的数,所以$B_5=6$。
对于$A_6=8$,右侧不存在比它大的数,所以$B_6=0$。
你需要根据给定的数组$A$,计算出数组$B$并输出。
例如,对于数组 $A=[2, 5, 3, 7, 1, 8]$,我们可以得到数组 $B=[2, 4, 4, 6, 6, 0]$。解释如下:
对于 $A_1=2$,右侧第一个比它大的数是 $A_2=5$,所以 $B_1=2$。
对于 $A_2=5$,右侧第一个比它大的数是 $A_4=7$,所以 $B_2=4$。
对于 $A_3=3$,右侧第一个比它大的数是 $A_4=7$,所以 $B_3=4$。
对于 $A_4=7$,右侧第一个比它大的数是 $A_6=8$,所以 $B_4=6$。
对于$A_5=1$,右侧不存在比它大的数,所以$B_5=6$。
对于$A_6=8$,右侧不存在比它大的数,所以$B_6=0$。
你需要根据给定的数组$A$,计算出数组$B$并输出。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?