P16762 [GKS 2020 #D] Locked Doors

题目描述

Bangles 正准备去参观当地的博物馆。博物馆由 $N$ 个房间排成一排组成,编号从 1 到 $N$ 从左到右。房间由 $N-1$ 扇锁着的门连接,每扇门连接一对相邻的房间。每扇门都有一个难度级别,表示 Bangles 打开这扇门的难度。没有两扇门的难度级别相同。第 $i$ 个房间与第 $i+1$ 个房间之间的门的难度级别为 ${D_i}$。 Bangles 将选择一个房间作为起点,然后一次参观一个房间,并在参观时拍照。她在起点房间拍下第一张照片,然后重复以下过程,直到她在所有房间都拍过照片:从她当前可用的两扇锁着的门中,她将打开难度较低的那扇门,并在新解锁的房间中拍照。如果她只有一扇锁着的门可用,那么她就打开那扇门。门一旦被打开,就会保持解锁状态。 Bangles 还不确定她要从哪个房间开始,因此她需要你回答 $Q$ 个查询。对于第 $i$ 个查询,她想知道:如果她从第 ${S_i}$ 个房间开始,那么她拍的第 ${K_i}$ 张照片是在哪个房间?

输入格式

输入的第一行给出测试用例的数量 $T$。接下来有 $T$ 个测试用例。每个测试用例的第一行包含两个整数 $N$ 和 $Q$。第二行包含 $N-1$ 个整数,描述锁着的门。第 $i$ 个整数(从 1 开始)是 ${D_i}$。然后,接下来 $Q$ 行,每行描述一个查询。这些行中的第 $i$ 行包含两个整数 ${S_i}$ 和 ${K_i}$。

输出格式

对于每个测试用例,输出一行,格式为 `Case #x: y`,其中 $x$ 是测试用例编号(从 1 开始),$y$ 是按顺序给出的 $Q$ 个查询的答案列表,用空格分隔。

说明/提示

在样例 #1 中,有四个查询: - 第一个查询:Bangles 拍照的房间顺序为 3、2、4、5、1,因此答案是 5。 - 第二个查询:Bangles 拍照的房间顺序为 3、2、4、5、1,因此答案是 3。 - 第三个查询:Bangles 拍照的房间顺序为 1、2、3、4、5,因此答案是 5。 - 第四个查询:Bangles 拍照的房间顺序为 4、3、2、5、1,因此答案是 2。 在样例 #2 中,有两个查询: - 第一个查询:Bangles 拍照的房间顺序为 6、5、4、3、2、1、7、8、9、10,因此答案是 8。 - 第二个查询与第一个相同,因此答案也是 8。 ### 限制条件 $1 \le T \le 100$。 对于所有 $i$,$1 \le D_i \le 10^5$。 所有 $D_i$ 互不相同。 对于所有 $i$,$1 \le S_i \le N$。 对于所有 $i$,$1 \le K_i \le N$。 **测试集 1** $2 \le N \le 1000$。 $1 \le Q \le 1000$。 **测试集 2** 最多 20 个测试用例满足 $2 \le N \le 10^5$ 且 $1 \le Q \le 10^5$。 其余测试用例满足 $2 \le N \le 1000$ 且 $1 \le Q \le 1000$。 翻译由 DeepSeek V4 Pro 完成