Module: 深入搜索。数字文件系统


Problem

8 /12


递归 DFS

Problem

给定一个 N (1 <= N <= 100) 乘以 M (1 <= M <= 100) 的矩阵。矩阵包含“.” –空单元格和“#” –无法访问的单元格。你只能上下左右移动。给定 q 个查询:行号和列号,如果此单元格 – ‘#’,则变为 ‘.’,否则 – “#”。对于每个 q 查询,确定单元格 tx;ty 是否可以从单元格 Sx;Sy 到达> 。如果可达,则在每一行上输出“是”,如果可达,则输出“否”。 - 否则。保证cell Sx; Sy 和单元格 tx; ty 不是 ‘#’每个请求中的单元格。
输入数据。
在第一行输入数字 Sx (1 <= Sx <= 100), Sy (1 < = Sy <= 100), tx (1 <= tx <= 100), t >y (1 <= ty <= 100), N (1 <= N <= 100), M(1 <= M <= 100 ) 和 q (1 <= q <= 100)。接下来的 N 行给出了一个矩阵,其中“.”为“.”。 –空单元格和“#” –无法访问的单元格。接下来的 q 行给出要更改的行号和列号。
<分区> 
输出。
如果来自单元格 Sx,则打印每个 q 查询“是”; Sy 进入单元格 tx; ty可以命中,“No” –否则。
 
<正文>  
说明
在第一次请求后,矩阵将如下所示:
.  .  #
##.
###
没有从点 1;1 到 2;3 的段落,因此,我们打印“No”。

在第二次请求之后,矩阵将如下所示:
.  .  #
#.  .
###
从点 1;1 到 2;3 有一个段落,所以我们输出 “Yes”。我们可以遵循的路径已突出显示。

(с) 弗谢沃洛德沙尔丁
 
输入 输出
1 1 2 3 3 3 2
.##
##.
###
1 2
2 2
没有
是的