编程题
优先级队列
## 题目描述
已知进入优先级队列的各结点的优先级(为<20的正整数,该值越小,则表示优先级越高),以及各结点入队列和出队列的操作序列,要求输出各结点的出队列顺序(输出编号)。注意,结点的编号为入队列时的序号,且从1开始计起。任何时刻如果存在优先级相同的结点,最先进入队列的结点先出队列。
## 输入描述
输入文件中包含多个测试数据。每个测试数据描述了一个优先级队列的操作序列:第一行为一个自然数n,5≤n≤20,表示结点数;接下来有2*n行,描述了这n个结点的入队列和出队列操作序列,如果为push,则表示为入队列,后面有一个正整数表示该结点的优先级,如果为pop,则表示当前优先级最高的结点出队列。输入文件最后一行为0,表示输入结束。
输入数据确保不会出现队列为空时执行pop操作。
## 输出描述
对每个测试数据,输出n个结点出队列的顺序(序号),相邻两个结点之间用符号“->”连接。
## 样例输入
```txt
6
push 17
push 14
push 15
pop
pop
push 5
pop
push 18
push 9
pop
pop
pop
0
```
## 样例输出
```txt
2->3->4->6->1->5
```