U514895 ١١(❛ᴗ❛)【单调栈】-左侧第一个较小值(不重复)
题目描述
作为一个刚刚进入数据结构的学习者,为了减轻大家的负担,我们直接开始进入正题。
给定一个数组,数组内部的所有数字保证没有重复并且数据的大小都大于等于$ 0 $。
现在给你提出问题,直接回答每一个位置$ i $左侧小于$ a[i] $的第一个元素的下标。
如果找不到这样的位置,直接输出`-1`。
输入格式
第一行给定一个正整数$ n $。
第二行给定$ n $个大于等于$ 0 $的整数,整数之间用空格间隔。
为了减少输入导致的卡常,如果$n$大于$ 1000 $,直接输出所有答案位置的位异或($^$)值。
输出格式
输出一行答案,分别代表不同位置的左侧第一小的元素下标,用空格进行间隔。异或值输出不包含第一个。
说明/提示
| 测试点编号 | $n \leq$ | $a[i]$ | 特殊性质 |
| ----------- | :------: | :----------------: | :------: |
| $ 1\sim 10 $ | $10$ | $ 0\sim 10 $ | 无 |
| $11 \sim 20$ | $10 ^ 3$ | $ 0\sim 1000 $ | 无 |
| $21\sim 40$ | $5 * 10 ^ 5$ | $ 0\sim 10^9 $ | 无 |