H君喜欢在阳台晒太阳,闲暇之余他会玩一些塔防小游戏。
H君玩的小游戏可以抽象成一棵 $n$ 个节点的有根树,树以 $1$ 为根,每个点的深度定义为其到根的简单路径上的点数(根的深度为 $1$)。
H君有 $n$ 个干员,H君会按照某种顺序把她们部署到树的每一个节点上,使得每个节点上恰好有一个干员。由于游戏的机制,他们对每个节点 $i$ 都给出了个限制参数 $a_i$ ,要求H君在第 $i$ 个节点部署干员之前,所有深度 $> a_i$ 的节点上不能有干员。同时游戏为了让玩家过关,保证了 $a_i$ 大于等于点 $i$ 的深度。
H君将每一次部署干员的节点按顺序写在纸上,形成了一个 $1 \dots n$ 的排列,H君为了获得更多的奖励,想要最小化这个排列的字典序。
我们认为排列 $c_1,c_2..c_n$ 的字典序比排列 $d_1,d_2..d_n$ 的字典序小,当且仅当 $c, d$ 不完全相同且存在一个下标 $i$,满足 $c_i < d_i$ 且对于所有 $1 \le j < i$ 的 $j$ 都有 $c_j = d_j$ 。