EEOJ/OJ2/README.md

1.3 KiB
Raw Permalink Blame History

军训排队

by 郑凯俐

时间限制: 1000 ms内存限制: 2000 KB

问题描述

军训时需要将所有同学(包括教官)排成一队,一开始只有教官(编号为1)排在第一个,之后教官会发出如下三种命令:

1 x y 编号为y的同学入队排在编号为x的同学的后面若要排在队首则用0表示x

2 x 编号为x的同学报告其后面的同学编号若要报告队首同学的编号则用0表示x若x在队尾则报告0

3 x 编号为x的同学出队

要求对于每次命令2都输出报告同学后面同学的编号并最后从头到尾输出队列中同学的编号。

输入格式

第一行为一个正整数N表示总共有几条命令

接下来N行中每行表示一个命令每行命令中数字之间用空格隔开

输出格式

对于每次命令2都输出一个编号用换行隔开

最后从头到尾输出队列,用换行隔开

输入样例

// 例如上图中的命令对应以下输入

7

1 1 2

1 1 3

2 3

1 2 4

3 1

1 0 5

2 4

输出样例

// 例如上图中的命令会产生以下输出

2

0

5

3

2

4

提示

  1. 同学编号为小于100000的正整数

  2. 命令的条数N为小于200000的正整数

  3. 队列中没有人时不会出现命令2和命令3