#999. 删除链表节点(进阶)

删除链表节点(进阶)

Description

链表指的是将需要处理的数据对象以节点的形式,通过指针串联在一起的一种数据结构。链表中的每个节点一般由数据区域和指针区域两部分构成,其中数据区域用于保存实际需要处理的数据元素,指针区域用来保存该节点相邻节点的存储地址。

给出一个链表和一个整数k,若链表中倒数第k个节点存在,则将该节点删除。若不存在,则不进行删除操作。完成删除处理后,依次输出链表中各个节点的数据。

提示:若需删除的第k个节点不存在,则将该链表原数据输出!

Format

Input

第1行,链表节点数量n,头指针head,要删除的节点k。

第2~n+1行,每行为两个数x和y。x表示节点数据区域的值,y表示节点指针区域的值。

Output

完成删除倒数第k个节点操作后,依次输出链表中剩余节点的数据。

Samples

5 2 4
40 3
20 4
10 1
50 -1
30 0
10 30 40 50

Limitation

1s, 1024KiB for each test case.