#L4748. 「eJOI2024」古奥尔海
「eJOI2024」古奥尔海
题目描述
题目译自 eJOI2024 Day1 T3. Old Orhei
古奥尔海 (Orheiul Vechi) 是位于拉乌河狭窄河湾上的一个自然和历史遗址。这里有 处考古遗址和 条单向道路连接这些遗址。每条道路的编号唯一,按输入顺序 到 给出。
最近,当地科学家发现了一个由库库特尼-特里皮利亚文明留下的数组。该数组由 个 到 之间的整数组成。为了弄清楚这个数组的神秘含义,新来的实习生将被指导遵循以下步骤:
- 一开始,实习生会在某个考古遗址。
- 其他科学家开始向他依次广播数组的一个连续子数组(先广播子数组的第一个元素,然后是第二个元素,依此类推)。
- 实习生根据以下规则更改其位置:
- 如果实习生当前的位置等于相应道路的起点,实习生将通过该道路前往相应道路的终点。
- 否则,实习生什么也不做,留在当前位置。
借第八届欧洲青少年信息学奥林匹克竞赛的机会,当地科学家请你帮助他们执行以下 个操作:
1 L R S- 科学家们想知道如果实习生最初位于第 处遗址,并且只广播初始数组中从编号 开始到 结束的连续子数组,实习生的最终位置会是什么。2 i K- 科学家们将数组 的第 个元素修改为 。更改是永久的。
你的任务是正确回答所有类型 的询问。
输入格式
第一行包含两个用空格分隔的整数 和 ,分别表示考古遗址和单向道路的数量。
接下来的 行包含道路的描述。具体来说,第 行将包含两个用空格分隔的数字,表示第 条道路从 开始,到 结束。可能存在道路 以及成对的道路 , 但 。
接下来的第 行包含一个整数 ,表示发现的数组的长度。
接下来的一行包含 个用空格分隔的整数 ,表示数组元素。
接下来的一行包含一个整数 ,表示操作的数量。
接下来的 行每行描述了一个操作:
1 L R S表示类型 的询问。2 i K表示类型 的操作。
输出格式
对于每个类型 的查询,输出一行表示答案。
样例 1
输入
5 6
1 2
3 2
4 2
2 5
5 1
4 5
6
2 1 4 2 5 3
3
1 3 5 2
1 3 5 2
1 1 2 3
输出
1
1
2
解释
第一个查询的过程:
-
实习生从遗址 开始,广播的子数组是 。
-

-
广播数字 :可以通过编号为 的道路,实习生移动到遗址 。
-

-
广播数字 :编号为 的道路无法使用,实习生保持在同一位置。
-
广播数字 :可以通过相应的道路,实习生移动到遗址 。
-

-
最终答案:。
样例 2
输入
3 3
1 2
2 3
3 1
4
3 1 1 2
4
1 1 2 3
2 2 2
1 1 2 3
1 1 4 2
输出
2
1
3
样例 3
输入
2 3
1 1
1 2
1 2
4
1 1 2 3
3
1 1 2 1
2 1 2
1 1 2 1
输出
1
2
数据范围与提示
对于所有输入数据,满足:
详细子任务附加限制及分值如下表所示。
| 子任务 | 分值 | 附加限制 |
|---|---|---|
| 1 | 7 | (只有一个类型 的查询) |
| 2 | 16 | |
| 3 | 17 | , , |
| 4 | 31 | 没有类型 的查询。 |
| 5 | 29 | 无附加限制 |