链表操作

测试数据来自 system/1550

作业已超过截止时间,您无法递交本题目。

时间限制:1秒  内存限制:256M


【问题描述】

  给定一个含 \(n\) 个结点的链表。现在有 \(m\) 个操作,操作分为下面几类:
  \(1\ i\):询问链表中第 \(i\) 个元素的值,保证 \(i\) 小于等于当前序列长度。
  \(2\ x\):询问 \(v\) 在链表中是第几个元素(最靠前的),如果找不到,输出"not found!"。
  \(3\ i\ x\):在链表的第 \(i\) 个元素前插入一个元素 \(x\),保证 \(1≤i≤n+1\)( \(n\) 表示当前序列的长度,如果 \(i=n+1\),表示在表尾加入 \(x\))。
  \(4\ i\):删除链表中第 \(i\) 个元素,保证 \(1≤i≤n\)( \(n\) 表示当前序列的长度)。

【输入格式】

  第 1 行包含两个整数:\(n,m\) ,分别表示最初的链表最初长度和后面要操作数。
  第 2 行包含 \(n\) 个整数,表示链表从从头到尾的每个结点的值。
  接下来的 \(m\) 行,每行表示题目所述的 4 类操作之一。

【输出格式】

  按输入顺序输出操作 1 和 2 的结果。

【输入输出样例】

 Input

5 11
8 88 888 8888 88888
1 3
2 8888
3 1 18
3 7 99
3 5 58
4 2
1 2
2 58
2 1888
4 3
1 4

 Output

888
4
88
4
not found!
8888

【数据说明】

  对于 \(100\%\) 的数据满足,\(n,m≤1000\),元素值在 int 范围内。

【来源】

   Mr.he

链表练习题

未认领
状态
已结束
题目
5
开始时间
2024-03-10 00:00
截止时间
2024-04-06 23:59
可延期
24.0 小时