Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1 s 空间限制:256 MB

#1646. [USACO06JAN]树林The Grove

统计

题目描述

牧场里有一片树林,林子里没有坑。
贝茜很想知道,最少需要多少步能围绕树林走一圈,最后回到起点.她能上下左右走,也能走对角线格子.
牧场被分成R行C列(1 <= R =< 50,1 < =C<= 50)。下面是一张样例的地图,其中“.”是牧场(贝西可以穿过),“X”是树林,“*”表示贝西的起点和终点位置,“+”表示她可以绕树林走的最短路径。
...+...
..+X+..
.+XXX+.
..+XXX+
..+X..+
...+++*
题目保证,最短的路径一定可以找到.

输入格式:

第1行:空格分隔的两个整数R和C;
第2行~R+1:行i+1用C个字符描述第i行(它们之间没有空格)。

输出格式:

单行包含一个整数,该整数是环绕grove所需的最小步数。

输入样例#1:

6 7
.......
...X...
..XXX..
...XXX.
...X...
......*

输出样例#1:

13