U283445 模拟链表

题目背景

如题,用各种方法模拟以下链表。

题目描述

初始状态已知 $n$ 个节点。分别以 $1,2,...,n$ 编号。他们以这样的链进行单向传递: $$ 1 \rightarrow 2 \rightarrow 3 \rightarrow …… \rightarrow n-1 \rightarrow n $$ 接下来会有 $m$ 次调整,每一次的调整都会是如下两种指令之一: - `1 x`,表示将编号为 $x$ 的节点从链表中删除,他的前驱和后继互相连接; - `2 x y`, 表示将编号为 $y$ 的节点插入到编号为 $x$ 的节点后面,即 $x$ 连向 $y$ ,$y$ 向 $x$ 原来的后继进行连接。(保证 $x$ 在链且 $y$ 不在链中) 所有的指令保证合法,且不存在链中节点小于 $2$ 的情况。 现在请你输出经过 $m$ 次调整之后的链表。

输入格式

输入共 $m+1$ 行. 第 $1$ 行,两个正整数 $n,m$ ,含义如题面所示。 第 $2$ 到 $m+1 $行,每行为一个指令,具体如下: - `1 x` - `2 x y` 指令的含义如题面所示,保证 $1≤x,y≤n$,且当前操作合法。

输出格式

一行,表示最终的链表,每两个数用一个空格分开。

说明/提示

对于 $40\%$ 的数据 : $n,m\le 10^3$。 对于 $100\%$ 的数据 : $n,m\le 10^6$。