QOJ.ac

QOJ

時間限制: 3 s 記憶體限制: 256 MB 總分: 100

#11170. 平台游戏

统计

Bajtazar 正在玩一款平台游戏。游戏地图由 $n$ 个垂直排列的平台组成,玩家角色可以在这些平台上移动。每个平台的长度均为 $X$,因此角色的位置可以用一对数字 $(i, x)$ 来描述,其中 $i$ 是从上往下数的平台编号,$x$ 是距离平台左端的距离($1 \le i \le n, 1 \le x \le X$)。角色从某个平台的左端出发,目标是到达任意平台的右端。角色只能向右移动。

为了增加难度,平台上的某些位置设有洞,阻碍玩家移动。角色可以跳过这些洞,或者利用它们掉落到下方的平台或跳到上方的平台。地图上不存在两个垂直重叠的洞,也不存在两个水平相邻的洞。

正式地,如果角色位于位置 $(i, x)$,则可能的移动方式如下: 按下按键 F:可以移动到 $(i, x + 1)$,前提是该位置没有洞。 按下按键 F:如果 $i \neq n$ 且 $(i, x + 1)$ 处有洞,则可以掉落到 $(i + 1, x + 1)$。 按下按键 A:如果 $(i, x + 1)$ 处有洞,则可以跳跃到 $(i, x + 2)$。 按下按键 B:如果 $i \neq 1$ 且 $(i - 1, x)$ 处有洞,则可以跳跃到 $(i - 1, x + 1)$。

已知玩家的初始位置,请计算到达任意平台右端所需的最少跳跃次数(即按下按键 AB 的总次数)。

输入格式

第一行包含三个整数 $n, X$ 和 $z$($1 \le n \le 100\,000, 1 \le X \le 10^9, 1 \le z \le 100\,000$),分别表示平台的数量、长度以及询问次数。

接下来的 $n$ 行描述各个平台;第 $i$ 行以一个非负整数 $k_i$ 开头,表示第 $i$ 行平台上的洞的数量,随后是 $k_i$ 个递增的整数,表示这些洞距离平台左端的距离。任何平台上,左端和右端都不会有洞,洞之间也不相邻。此外,在垂直相邻的平台上,不存在距离平台左端距离相同的洞。所有平台的洞的总数不超过 $2\,000\,000$。

接下来的 $z$ 行包含询问;第 $j$ 行包含一个整数 $p_j$($1 \le p_j \le n$)。

输出格式

程序应输出 $z$ 行;第 $j$ 行应包含一个整数,表示从位置 $(p_j, 1)$ 到达坐标为 $X$ 的位置所需的最少按键 AB 的次数。

样例

输入格式 1

3 9 3
1 6
2 3 8
2 5 7
3
2
1

输出格式 1

1
1
0

说明

样例解释:玩家从 $(3, 1)$ 出发,可以按两次 F 到达 $(3, 3)$,然后按 B 跳到 $(2, 4)$,再按五次 F(期间会掉落到下方),最终到达 $(3, 9)$。 从 $(2, 1)$ 出发,可以按一次 F,然后按一次 A,再按五次 F。 从 $(1, 1)$ 出发,只需一直按 F 即可。

测试用例

  • 测试用例 1:$n = 5$,无特殊结构;
  • 测试用例 2:$n = 50$,洞呈对角线分布;
  • 测试用例 3:$n = 50$,洞呈棋盘格分布。

子任务

子任务 条件 分值
1 $z \le 5, n \cdot X \le 1\,000\,000$ 30
2 $z \le 5$ 50
3 无附加条件 20

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.