AT_abc273_e [ABC273E] Notebook

题目描述

有一个整数序列 $A$ 和一本笔记本。笔记本有 $10^9$ 页。 给定 $Q$ 个操作,每个操作属于以下四种之一: > ADD $x$ :将整数 $x$ 添加到 $A$ 的末尾。 > DELETE :删除 $A$ 的末尾元素。如果 $A$ 为空,则什么也不做。 > SAVE $y$ :将第 $y$ 页上的序列擦除,并将当前的 $A$ 写入第 $y$ 页。 > LOAD $z$ :用笔记本第 $z$ 页上的序列替换 $A$。 初始时,$A$ 是空序列,笔记本的所有页面上都写着空序列。从这个初始状态开始,依次执行 $Q$ 个操作,并在每个操作执行后,输出 $A$ 的末尾元素。 如果输入输出量较大,建议使用高效的输入输出方法。

输入格式

输入通过标准输入按以下格式给出。 > $Q$ > $\mathrm{query}_1$ > $\mathrm{query}_2$ > $\vdots$ > $\mathrm{query}_Q$

输出格式

对于 $i=1,2,\ldots,Q$,在执行完第 $i$ 个操作后,输出 $A$ 的末尾元素 $X_i$(如果 $A$ 为空,则 $X_i:=-1$)。 > $X_1\ X_2\ \ldots\ X_Q$

说明/提示

### 约束 - $1 \leq Q \leq 5 \times 10^5$ - $1 \leq x, y, z \leq 10^9$ - $Q, x, y, z$ 均为整数 - 所有操作均为上述四种之一 ### 样例解释 1 初始时,$A$ 是空序列,即 $A=()$,笔记本所有页面上都写着空序列。 - 第 $1$ 个操作,将 $3$ 添加到 $A$ 的末尾,$A=(3)$。 - 第 $2$ 个操作,将 $A$ 写入笔记本第 $1$ 页,此时第 $1$ 页内容为 $(3)$,$A$ 不变。 - 第 $3$ 个操作,将 $4$ 添加到 $A$ 的末尾,$A=(3,4)$。 - 第 $4$ 个操作,将 $A$ 写入笔记本第 $2$ 页,此时第 $2$ 页内容为 $(3,4)$,$A$ 不变。 - 第 $5$ 个操作,用笔记本第 $1$ 页的内容 $(3)$ 替换 $A$,$A=(3)$。 - 第 $6$ 个操作,删除 $A$ 的末尾元素,$A=()$。 - 第 $7$ 个操作,$A$ 已为空,什么也不做,$A=()$。 - 第 $8$ 个操作,用笔记本第 $2$ 页的内容 $(3,4)$ 替换 $A$,$A=(3,4)$。 - 第 $9$ 个操作,将 $A$ 写入笔记本第 $1$ 页,此时第 $1$ 页内容为 $(3,4)$,$A$ 不变。 - 第 $10$ 个操作,用笔记本第 $3$ 页的内容 $()$ 替换 $A$,$A=()$。 - 第 $11$ 个操作,用笔记本第 $1$ 页的内容 $(3,4)$ 替换 $A$,$A=(3,4)$。 由 ChatGPT 4.1 翻译