题目描述
$1,2,\ldots,n$ 依次入栈,入栈过程中可以在任意时刻出栈。给定一个出栈序列,判断它是否可能;若可能,输出一组对应的操作序列(push 使下一个数入栈、pop 使栈顶出栈)。
输入格式
第一行整数 $n$;第二行 $n$ 个互不相同且取值在 $[1,n]$ 的整数,为出栈序列。
输出格式
不可能输出 impossible;否则输出若干行操作,按发生顺序每行一个 push 或 pop(若有多种方案输出字典序最小的一种:能 pop 就先 pop)。
数据范围
$$1 \le n \le 2000$$