SP20673 CNTINDX - Count The Indexes
题目描述
让我们来操作一个数组,这是计算机科学中最基础的数据结构之一。你需要完成几种操作,具体有以下三种:
1. 在数组末尾插入一个数。
2. 删除数组的最后一个数,即最近插入的那个数。
3. 给定一个数和两个下标 $i$ 和 $j$(满足 $i \leq j$),请你计算这个数在数组中从第 $i$ 到第 $j$ 位置出现了多少次。
初始时,数组为空。
输入格式
输入包含一个测试用例。第一行是整数 $Q$($1 \leq Q \leq 200000$),表示操作的总数。接下来的 $Q$ 行每行表示一个操作,格式如下:
- `1 x`:表示在数组末尾插入数字 $x$,其中 $1 \leq x \leq 200000$。
- `0`:表示删除数组的最后一个数。
- `2 x i j`:表示查询数字 $x$ 在从 $i$ 到 $j$ 位置出现了多少次。保证数组中一定存在数字 $x$,且 $1 \leq i \leq j \leq$ 数组的长度。
输出格式
对于删除操作,如果数组已为空,输出 "invalid"(不带引号);否则无需输出任何内容。对于类型 3 的查询操作,输出一个整数,表示数字 $x$ 在从 $i$ 到 $j$ 位置出现的次数。
**本翻译由 AI 自动生成**