D : Treasure

Progress Bar

时间限制:1 Sec 内存限制:64 MiB

提交


题目描述

有一个 n 行 m 列的迷宫, 行数从上到下为 1 到 n, 列数从左到右为 1 到 m, 入口为 (1,1), Reverie只能向上下左右四个方向行走。迷宫中有若干个宝箱。 Reverie想知道,最少需要走多少步,才能找到一个宝箱。

输入描述

第一行两个正整数 n, m, 表示迷宫的行数和列数。

之后 n 行,每行 m 个字符, '.' 表示该位置是空地, '*' 表示该位置是障碍, '#' 表示该位置有一个宝箱。

保证点 (1,1) 是空地,宝箱所在的格子可以通过。

$1 \leq n,m \leq 1000$

输出描述

一行内输出一个整数表示答案,如果没有宝箱或者所有宝箱位置均不可达,输出 -1.

样例输入

3 3
...
.*.
..#

样例输出

4