编程题
### 问题描述 硕鼠鼠处理一个数组,他将会得到一些操作。操作将会有三种类型: 类型 $1$:在数组末尾插入一个数字。 类型 $2$:删除数组中的最后一个数字,最后一个数字是最近插入的数字。 类型 $3$:得到一个数字和两个索引 $i$ 和 $j$,其中 $i \leq j$。现在他需要回答这个数字从 $i$ 到 $j$ 出现了多少次。 假设最开始数组是空的。 ### 输入格式 第一行是一个整数 $Q$,表示操作的次数。 接下来的 $Q$ 行包含一个操作。操作将会以以下格式出现: - $1$ $x$,其中 $1 \leq x \leq 10^5$,意味着他需要在数组末尾插入数字 $x$。 - $0$,对于这个操作,他需要删除数组中的最后一个数字。 - $2$ $x$ $i$ $j$,在这里,他需要找出数字 $x$ 在数组中从 $i$ 到 $j$ 出现了多少次。这里 $x$ 一定会在数组中出现,且 $1 \leq i \leq j \leq$ 数组长度。 ### 输出格式 对于删除操作,如果数组已经是空的,那么输出字符串 `invalid`。否则对于删除数字你不需要打印任何东西。 对于操作类型为 $2$,需要输出一个整数,即数字 $x$ 在数组中从 $i$ 到 $j$(包括 $i$ 和 $j$)出现了多少次。 ### 样例输入 ``` 7 1 10 1 20 2 20 1 2 0 2 10 1 1 0 0 ``` ### 样例输出 ``` 1 1 invalid ``` ### 评测数据规模 $1 \leq Q \leq 10^5$。
查看答案
赣ICP备20007335号-2