T412501 未来道具研究所

题目背景

> 宇宙虽有其起源,却没有终结——无限。 > > 星球虽也有起源,却因其自身之力走向毁灭——有限。 > > 拥有睿智之才是最为愚蠢者,历史上不胜枚举。 > > 这也可以说是给那些抵抗者们的,神的最后通牒。

题目描述

给出一个长度为 $n$ 的序列,你需要将它变成未来道具! 一个合法的未来道具是一个树形结构。它的每个节点的权值小于它父节点的权值且它在原序列中的位置在父节点之后。 现在需要你给出一种制造未来道具的方法,使得原序列中的节点在未来道具中的深度和最大。其中根节点的深度为 $1$。 你需要输出最大的深度和与具体的构造方法。

输入格式

第一行包含一个整数 $n$,表示序列中有 $n$ 个元素,且一定包含 $n$。 第二行包含 $n$ 个整数,表示序列中的元素。 **不保证输入序列中的元素不重复**。

输出格式

第一行输出一个整数,表示最大的深度和。 第二行输出 $n$ 个整数,第 $i$ 个整数为该元素在未来道具中的父节点在原序列中的位置,若没有父亲则该整数为 $0$。 若有多种构造方式,则输出任意一种。 本题采用 **Special Judge** 进行评测。

说明/提示

#### 数据范围 对于 $100\%$ 的数据,保证 $1 \le n \le 5 \times 10^5$。 序列中的元素值在 `int` 范围内,**不保证输入序列的元素不重复**。 **本题采用捆绑测试**,子任务及数据点分配如下: |子任务编号|特殊性质|分值| | :--------: | :-----: | :--: | |$1$|$1 \le n \le 10$|$20$| |$2$|$1 \le n \le 5000$|$30$| |$3$|无特殊性质|$50$|