#P13869. [2022年福建培训]滑冰

    ID: 13071 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 7 上传者: 标签>CF22002-SAT图论强连通分量字符串矩阵

[2022年福建培训]滑冰

Description

有一个 n×m 的滑冰场,其中有一些障碍物。你一开始在滑冰场的某个位置上。 每次你可以选择上下左右四个方向之一进行移动,因为冰面很滑所以你会一直朝选定的方向移动直到碰到边界或障碍物。 用 . 表示无障碍物的冰面,用 # 表示障碍物,用 S 表示你初始的位置(这个位置也是无障碍物的冰面),例如: ..... ..... #.S.# ..... ..#.. 就描述了一个可能的滑冰场。将第 i 行第 j 列的位置记作 (i,j),则你在 (3,3),向上会移动到 (1,3),向下会移动到 (4,3),向左会移动到 (3,2),向右会移动到 (3,4)。 现在将一些无障碍物的冰面上放上标记点,用 o 表示,也就是说 o 表示标记点,而且这个位置也是无障碍物的冰面。 保证你初始的位置上没有标记点。 请问你能否规划一个移动方式,使得你的移动路线可以经过所有的标记点呢?

Format

Input

本题输入文件包含多组数据。 第一行,一个正整数 T,表示数据组数。对于每组数据: 第一行,两个正整数 n,m,表示滑冰场的大小。 接下来 n 行,每行一个长度为 m 的字符串,表示滑冰场的内部结构。 保证恰好有一个初始位置 S,且至少有一个标记点 o。

Output

对于每组数据,输出一行,一个字符串 Yes 或 No 表示能否规划可行的移动方式,如果可以则输出 Yes 否则输出 No。

Samples

2
3 7
#..S..#
#.###.#
o..#..o
6 6
o..o##
..S...
o..o#.
####o.
......
.....#
No
Yes

【数据范围】 对于 16% 的数据,保证输入的字符矩阵中不存在 #。

对于另外 8% 的数据,n=1 或 m=1。

对于另外 8% 的数据,保证输入的字符矩阵中的 o 数量不超过 1。

对于另外 8% 的数据,保证输入的字符矩阵中的 o 数量不超过 3。

对于另外 12% 的数据,保证输入的字符矩阵中的 o 数量不超过 5。

对于 100% 的数据,1≤T≤5,1≤n,m≤50,保证输入的字符矩阵中恰好有一个 S,且至少有一个 o。