题目 30233

笛卡尔树

查看题解 ↗GitHub ↗如何评测
题号
30233
时间限制
10000 ms
内存限制
1024 MB
标签
树图论
来源
Library Checker (yosupo06) - cartesian_tree

【题目描述】

给定一个由互不相同的整数组成的序列 A=(a0,a1,…,aN−1)A = (a_0, a_1, \dots, a _ {N-1})。 构造由该序列 AA 得到的笛卡尔树。 最小的元素成为根。

【输入】

文本
$N$
$a_0$ $a_1$ ... $a _ {N - 1}$

【输出】

文本
$p_0$ $p_1$ $p_2$ ... $p_{N - 1}$

pip_i 是顶点 ii 的父亲。对于树的根节点 rr,pr=rp_r = r。

【输入样例】

文本
3
1 0 2

【输出样例】

文本
1 1 1

【输入样例2】

文本
11
9 3 7 1 8 12 10 20 15 18 5

【输出样例2】

文本
1 3 1 3 10 6 4 8 6 8 3

【数据范围】

  • 1≤N≤10000001 \leq N \leq 1000000
  • 0≤ai≤10000000000 \leq a_i \leq 1000000000
  • i≠ji \ne j 蕴涵 ai≠aja_i \ne a_j
  • 所有值均为整数

【来源】

Library Checker(yosupo06) cartesian_tree

数据下载

题目 30233 的公开数据

正在读取文件列表…

常用命令

题目 30233 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。