问题 3395 --环游大同80天

3395: 环游大同80天

题目描述

一年一度的xuzhenyiOI2006在风景如画的大同中学举行。按照以往惯例,在激烈的比赛过程后,选手们会应邀去风景名胜区游览。今年当然也不例外。为了确定一条最佳的旅游路线,组委会请各位选手编一程序帮忙寻找。假设所有的风景点都集中在一个C列R行的矩阵中,矩阵的每一元素代表风景点或者障碍物。现在你要寻找一条满足下列条件的最佳旅游路线: - 这条路线上的每一点结点必须是风景点(即不能为障碍物) - 每个风景点最多游览一次 - 这条路线必须是连续的相邻风景点的序列(若风景点A和B分别位于矩阵的位置(a1,a2)及(b1,b2),且|a1-b1|+|a2-b2|=1,则风景点A和B是相邻的) - 在满足上述条件下,游览的风景点尽可能多 假设任意的两个风景点都有且仅有一条路径(无回路)相连。显然,任意一个风景点都可以作为游览路线的起点或者终点。

输入

第一行是两个整数C和R(3≤C,R≤1000),表示矩阵的列数和行数。 接下来有R行,每行有C个字符,每个字符都只能是‘#’或‘.’,‘#’表示障碍物,‘.’表示风景点。行首行末无多余空格。

输出

只有一行,输出最佳路线的长度。

样例输入输出

输入#1 复制
3 3
###
#.#
###
输出#1 复制
0

提示

序号 标题 作者 发表时间 费用 订购数 操作