#P5847. vector基本操作

vector基本操作

题目描述

一个 vector 里已经有 nn 个数字。

现在有 qq 次操作,操作分为 66 种类型:

  • 1 x:在 vector 末尾插入 11 个数字 xx
  • 2 k x:在 vector 末尾插入 kk 个数字 xx
  • 3 k:输出 vector 里的第 kk 个数字,如果不存在第 kk 个数字,则输出 -1
  • 4 k x:把 vector 里的第 kk 个数字改为 xx,如果不存在第 kk 个数字,则不进行修改;
  • 5:输出 vector 里的数字个数;
  • 6:输出 vector 里的所有数字。

注意:题目中的第 kk 个数字按照从 11 开始计数。

输入格式

第一行输入一个整数 nn

第二行输入 nn 个整数,表示 vector 里已经有的数字。

第三行输入一个整数 qq

接下来 qq 行,每行先输入一个整数 opop,表示操作类型。根据操作类型不同,后面还会输入 kkxx

输出格式

对于操作 356,按要求输出对应结果,每个操作的输出占一行。

对于操作 6,如果 vector 为空,则输出一个空行;否则按顺序输出所有数字,数字之间用一个空格隔开。

样例

3
1 2 3
6
1 7
2 2 5
5
3 4
4 2 6
6
6
7
1 6 3 7 5 5

数据范围与提示

对于 100%100\% 的数据,1n1001 \le n \le 1001q1001 \le q \le 100,输入中的数字均在 1110910^9 之间。

提示:可以使用 push_back、下标访问、size() 等操作完成本题。