SP28449 ADALIST - Ada and List

题目描述

给定一个只包含数字的列表,对其有三种操作。 1.将数字 $x$ 插入列表中的位置 $k$ 2.删除列表中位置 $k$ 的数字 3.输出列表中位置 $k$ 的数字

输入格式

第一行,原列表的长度 $n$ 与查询的次数 $Q$ 。 第二行, $n$ 个数字,表示原列表的每个元素。 接下来 $Q$ 行,每行表示一次操作,每一行先输入一个数字: 如果数字为 $1$ ,再输入一个 $x$ 和 $k$ ,表示将数字 $x$ 插入列表中的位置 $k$ ; 如果数字为 $2$ ,再输入一个 $k$ ,表示删除列表中位置 $k$ 上的数; 如果数字为 $3$ ,输出列表中位置 $k$ 的数字。

输出格式

根据输入 ,如果数字为 $3$ ,输出列表中位置 $k$ 的数字

说明/提示

所有数据满足$0 < N \le 10^5$,$ 0 < Q < 5 \times 10^5$,$0 \le A_k \le 10^9$,$1 \le a \le 3$。 对于所有查询和删除操作,$1 \le k \le \text{当前列表长度}$。 对于插入操作(类型 $1$),满足 $k \le \text{当前列表长度} + 1$。 对于插入操作,若 $k = \text{当前列表长度} + 1$,表示在列表末尾添加。 如果列表为空,不会出现类型 $2$ 或类型 $3$ 的操作。