QOJ.ac

QOJ

実行時間制限: 2.0 s メモリ制限: 1024 MB 満点: 100

#17624. 后室

統計

巫师 Harry 喜欢烘焙。有一天,他发现了一个咒语,可以将他传送到“后室”(这个双关语仅在瑞典语中有效),他为此感到非常高兴。然而,当他使用这个咒语时,他并没有被传送到面包店,而是被传送到一个无限大的网格中。网格中的每个单元格要么是空的,要么是被阻挡的。在网格中,你可以向上、下、左或右移动到相邻的非阻挡单元格。在四处走动了一会儿后,他注意到被阻挡单元格的模式是周期性的。更准确地说,有一个 $R \times C$ 的模式在无限重复。具体工作方式请参见下图。

img

样例 1 可视化。 基础模式以红色标记。$(0,0)$ 未被阻挡,而 $(1,1)$ 被阻挡。第一个问题的坐标绘制在 $(2,4)$ 和 $(4,3)$。自然地,网格在绘制范围之外无限延伸。

为了逃脱,他需要到达网格中的某个特定单元格。然而,他的传送魔法有点生疏,所以他会问你 $Q$ 个问题,形式如下:“如果我传送到单元格 $(s_x, s_y)$,我能走到单元格 $(g_x, g_y)$ 吗?”

输入

第一行包含两个整数 $R$ 和 $C$ ($1 \leq R,C \leq 1000$),表示网格的行数和列数。

接下来的 $R$ 行,每行包含一个长度为 $C$ 的字符串,由字符 .# 组成。这些是网格的行。字符 # 表示该单元格被阻挡,. 表示该单元格是空的。

随后是一行,包含整数 $Q$ ($1 \leq Q \leq 10^5$),表示你需要回答的问题数量。

接下来的 $Q$ 行,每行包含四个整数 $s_x, s_y, g_x, g_y$ ($0 \leq s_x, s_y, g_x, g_y \leq 10^{12}$),表示问题的坐标。保证这些坐标处的单元格均未被阻挡。

输出

对于每个问题,如果 Harry 可以从单元格 $(s_x, s_y)$ 走到单元格 $(g_x, g_y)$,则打印 Yes,否则打印 No

评分

你的解决方案将在多组测试用例上进行测试。要获得某一组的分数,你必须通过该组中的所有测试用例。

Group Points Constraints
1 7 $R, C \leq 2$, $Q \leq 5$, $s_x, s_y, g_x, g_y \leq 500$
2 4 $R, C, Q \leq 5$, $s_x, s_y, g_x, g_y \leq 500$
3 8 $R, C, Q \leq 5$, $s_x, s_y, g_x, g_y \leq 10^5$
4 25 $R, C, Q \leq 5$
5 15 $R, C \leq 5$
6 21 $R, C \leq 25$
7 20 无额外限制。

样例

输入格式 1

3 3
#.#
.#.
..#
5
2 4 4 3
0 0 2 1
0 0 0 0
900000002 900000004 900000004 900000003
2 1 1 2

输出格式 1

Yes
No
Yes
Yes
No

说明

  • 问题 1:Harry 从 $(2,4)$ 出发,想要移动到 $(4,3)$。为此,他可以向右、向下再向右移动。
  • 问题 2:起点和终点被墙壁隔开,因此答案是 No
  • 问题 3:Harry 已经在终点,所以他瞬间完成了任务。
  • 问题 4:即使我们在很远的地方,网格依然在延伸。答案是 Yes
  • 问题 5:同样,起点和终点被墙壁隔开。

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.