说出来你可能不信,这场比赛居然有签到题。
定义长度为 $n$ 的排列 $p$ 的前缀最小值数组为一个长度为 $n$ 的数组 $A(p)$,其中 $A(p)[i] = min \ p[j] (1 \leq j \leq i)$。
可怜定义排列 $p$ 的长度为 $i$ 的前缀小于长度为 $j$ 的前缀当且仅当 $A(p)_i < A(p)_j$ 或者 $A(p)_i = A(p)_j$ 且 $i < j$。利用这个小于关系,可怜求得了另一个长度为 $n$ 的排列 $q$,其中 $q_i$ 表示排列 $p$ 第 $i$ 小的前缀的长度。
可怜是个粗心的女孩子,因为一些机缘巧合,可怜丢失了排列 $p$。于是可怜希望能够通过排列 $q$ 来还原出排列 $p$。满足条件的排列 $p$ 可能有很多,可怜希望你能求出它们中字典序最小的那个。
长度为 $n$ 的排列 $x$ 在字典序上小于长度为 $n$ 的排列 $y$ 当且仅当存在下标 $i \in [1,n]$ 满足 $x_i < y_i$ 且对更小的下标 $j \in [1,i)$,都有 $x_i=y_i$。