#ABC273E. 笔记本

笔记本

笔记本

题目描述

我们有一个整数序列 AA 和一个笔记本。笔记本有 10910^9 页。

给你 QQ 个查询。每个查询是以下四种之一:

  • ADD x:向 AA 的末尾追加整数 xx
  • DELETE:若 AA 非空,则删除 AA 的最后一项;否则什么也不做。
  • SAVE y:擦除笔记本第 yy 页上记录的序列,并把当前的 AA 记录到第 yy 页。
  • LOAD z:用笔记本第 zz 页上记录的序列替换 AA

初始时,AA 是空序列,笔记本每一页都记录着空序列。 按给定顺序依次处理 QQ 个查询,并在处理完每个查询后输出 AA 的最后一项。

由于输入输出可能很大,建议使用高速输入输出方法。

输入格式

输入按以下格式从标准输入给出:

QQ
query1\mathrm{query}_1
query2\mathrm{query}_2
\vdots
queryQ\mathrm{query}_Q

输出格式

对于每个 i=1,2,,Qi = 1, 2, \ldots, Q,令 XiX_i 为处理完前 ii 个查询后 AA 的最后一项,若 AA 为空则令 Xi:=1X_i := -1,并按以下格式输出:

X1X_1 X2X_2 \ldots XQX_Q

样例

11
ADD 3
SAVE 1
ADD 4
SAVE 2
LOAD 1
DELETE
DELETE
LOAD 2
SAVE 1
LOAD 3
LOAD 1
3 3 4 4 3 -1 -1 4 4 -1 4

初始时,AA 是空序列,即 A=()A = (),笔记本每一页都记录着空序列。

通过第 11 个查询,33 被追加到 AA 的末尾,得到 A=(3)A = (3)

通过第 22 个查询,笔记本第 11 页记录的序列变为 (3)(3)A=(3)A = (3) 保持不变。

通过第 33 个查询,44 被追加到 AA 的末尾,得到 A=(3,4)A = (3, 4)

通过第 44 个查询,笔记本第 22 页记录的序列变为 (3,4)(3, 4)A=(3,4)A = (3, 4) 保持不变。

通过第 55 个查询,AA 被替换为笔记本第 11 页记录的 (3)(3),得到 A=(3)A = (3)

通过第 66 个查询,AA 的最后一项被删除,得到 A=()A = ()

通过第 77 个查询,因为 AA 已经为空,所以什么也不发生。A=()A = () 保持不变。

通过第 88 个查询,AA 被替换为笔记本第 22 页记录的 (3,4)(3,4),得到 A=(3,4)A = (3, 4)

通过第 99 个查询,笔记本第 11 页记录的序列变为 (3,4)(3, 4)A=(3,4)A = (3, 4) 保持不变。

通过第 1010 个查询,AA 被替换为笔记本第 33 页记录的 ()(),得到 A=()A = ()

通过第 1111 个查询,AA 被替换为笔记本第 11 页记录的 (3,4)(3, 4),得到 A=(3,4)A = (3, 4)

21
ADD 4
ADD 3
DELETE
ADD 10
LOAD 7
SAVE 5
SAVE 5
ADD 4
ADD 4
ADD 5
SAVE 5
ADD 2
DELETE
ADD 1
SAVE 5
ADD 7
ADD 8
DELETE
ADD 4
DELETE
LOAD 5
4 3 4 10 -1 -1 -1 4 4 5 5 2 5 1 1 7 8 7 4 7 1

数据范围

  • 1Q5×1051 \le Q \le 5 \times 10^5
  • 1x,y,z1091 \le x, y, z \le 10^9
  • QQxxyyzz 均为整数。
  • 每个查询都是题目描述中的四种之一。
难度 提高
通过率
尝试 0
已通过 0
ID
2508
类型
传统题
Time Limit
3000ms
Memory Limit
1024MiB
上传者
标签