#297. 迷宫
迷宫
题目描述
在一个古老森林的深处,探险家发现了一个神秘的迷宫,刻在地上,形成一个 行 列的网格。迷宫中的每个格子要么是闪烁的冰面,要么是不可移动的巨石。网格由 个铭文表示,标记为 ,每个铭文包含 个符号。如果铭文 的第 个符号——对应位置 ——是 .
,则该格子是冰;如果是 #
,则是巨石。
迷宫的外围(第 1 行、第 行、第 1 列、第 列)完全由巨石构成,形成天然屏障。探险家从固定的起点 开始探险,根据森林的古老传说,该点始终是冰。
探险家拥有独特的能力:他可以沿着冰面朝四个基本方向——上、下、左、右——滑行,但一旦选定方向,他会一直滑行直到撞上巨石或非冰格为止。他可以选择不滑行或任意多次滑行,每次探索新的路径。他的同伴 dash 挑战他计算在这个魔法迷宫中,他能到达或经过(包括滑过的)的所有不同格子总数。
输入格式
第一行包含两个正整数 和 ,表示网格的尺寸。
接下来的 行,每行包含一个长度为 的字符串 ,由 .
(冰)或 #
(巨石)组成,描述网格内容。
输出格式
输出一个整数,能触及或经过的独特格子总数。
样例
6 6
######
#....#
#.#..#
#..#.#
#....#
######
12
解释 #1
可以通过以下滑行到达 :
。
他也可以通过 经过 。
但由于迷宫的布局,他无法到达 。
21 25
#########################
#..............###...####
#..............#..#...###
#........###...#...#...##
#........#..#..#........#
#...##...#..#..#...#....#
#..#..#..###...#..#.....#
#..#..#..#..#..###......#
#..####..#..#...........#
#..#..#..###............#
#..#..#.................#
#........##.............#
#.......#..#............#
#..........#....#.......#
#........###...##....#..#
#..........#..#.#...##..#
#.......#..#....#..#.#..#
##.......##.....#....#..#
###.............#....#..#
####.................#..#
#########################
215
数据范围
- 每个 是长度为 的字符串,仅包含
.
和#
。 - 网格的边缘(首行、末行、首列、末列)均为
#
(巨石),且 始终为.
(冰)。
统计
相关
在下列比赛中: