#1424. 最小体力值
最小体力值
题目描述:
迷迷糊糊中,小智进入了 C++的编程世界。突然,他发现自己处于一个字符方阵之中。字符方阵由 ‘*’ 和 ‘. ’组成,‘. ’的位置可以毫不费力地通过;通过‘ * ’的位置需要消耗 1 个体力值。小智处于‘ .’ 的位置。
由于是在梦中,小智走路的时候不会拐弯。所以小智只能从当前位置选择“上下左右”当中的一个方向直走,直到走出方阵。
请你帮小智计算一下,要走出方阵最少需要消耗多少体力值。
输入格式:
第 1 行 2 个正整数 n 和 m(3 < m,n < 20),表示方阵的大小。数值中间用空格隔开,接下来 n 行,每行 m 个字符(’*‘和’.‘)。字符之间用空格隔开。 最后一行是两个正整数 x 和 y,表示小智当前所在的行号和列号。
输出格式:
一个整数,表示小智需要消耗的最少体力值。
样例:
3 4
* * * *
* * . *
* * * *
2 3
1
提示
小智当前所在位置一定为‘.’