#Z1005. 周期平面
周期平面
题目描述
给定一个 行 列的网格图,. 表示可以通行,# 表示不可通行。每次可以向上、下、左、右四个方向之一移动一格,不能斜向移动。
每个可以通行的格子上有一种道具,并且同一个原始网格内不同可通行格子的道具种类互不相同。
现在将这个 网格在上下左右方向无限复制,得到一个无限大的平面。不同副本中相同相对位置的格子拥有同一种道具。
初始位于某个副本中的第 行第 列。请完成以下两个任务:
- 判断是否可以到达无限多个不同的格子。
- 求最多可以获得多少种不同的道具。
输入格式
第一行两个整数 ,表示原始网格大小。
接下来 行,每行一个长度为 的字符串,表示原始网格。
最后一行两个整数 ,表示初始位置。坐标从 开始编号。
输出格式
输出两行。
第一行输出 Yes 或 No,表示是否可以到达无限多个不同格子。
第二行输出一个整数,表示最多可以获得的不同道具种类数。
5 4
#.##
..#.
#..#
##.#
##.#
4 3
No
8
1 1
.
1 1
Yes
1
样例解释
样例 1 中,从起点出发只能到达原始网格中 个可通行相对位置,不能以不同绝对坐标到达同一个相对位置,因此不能到达无限多个不同格子。
样例 2 中,唯一的格子可以通行。由于网格会在平面上无限复制,因此可以不断移动到其他副本中的同类格子,可以到达无限多个不同格子,但道具种类只有 种。
数据范围与约定
| 子任务 | 分值 | 限制 |
|---|---|---|
| ,特殊性质 A | ||
| ,特殊性质 B | ||
特殊性质 A:网格边界全部为 #,且起点不在边界上。
特殊性质 B:网格中不含 #(全部为 .)。
对于所有数据,,网格中仅包含 . 和 #,且初始位置一定可以通行。