QOJ.ac

QOJ

时间限制: 1 s 内存限制: 2048 MB 总分: 100

#4231. 漂流之旅

统计

你正在计划一次漂流旅行。地形可以看作一个网格。每个单元格要么是陆地,要么是河流的一部分,河流向北、南、东或西四个方向之一流动。一些陆地单元格包含观光点。

你可以选择任何河流单元格作为漂流旅行的起点。一旦你的木筏到达一个河流单元格(包括起点),它将沿着该单元格的水流方向移动到相邻单元格,或者离开网格。

如果你的木筏到达了与某个观光点相邻的河流单元格(包括起点),你就可以参观该观光点。(单元格的相邻关系包括水平和垂直方向的邻居,不包括对角线方向的邻居。)每个观光点最多只能参观一次。

当你的木筏移动到陆地单元格、离开网格,或进入之前已经到达过的河流单元格时,你的漂流旅行就会停止。注意,如果木筏最终停在陆地单元格上,你无法参观与该陆地单元格相邻的观光点。

如果你能最优地选择起点,那么在单次漂流旅行中你能参观的观光点数量最大是多少?

第一个样例的示意图。最优的漂流旅行从带有木筏的单元格开始,参观了 4 个观光点(用双筒望远镜标记)。旅行中经过的河流单元格以深蓝色高亮显示。

输入格式

第一行包含两个整数 $r$ 和 $c$ ($2 \leq r, c \leq 500$);地形网格有 $r$ 行和 $c$ 列。

接下来的 $r$ 行,每行包含 $c$ 个字符,描述地形网格的一行。点 . 表示没有观光点的陆地单元格。井号 # 表示包含观光点的陆地单元格。河流单元格分别用 ^(北)、v(南)、>(东)或 <(西)表示。网格中至少有一个河流单元格。

输出格式

输出一行,包含一个整数,即在单次漂流旅行中你能参观的观光点数量的最大值。

样例

样例输入 1

5 6
v<<<#v
v#v<.>
>>v<<<
..v##^
#<<<.^

样例输出 1

4

样例输入 2

4 5
>v<<.
^<..#
#...#
.#>^#

样例输出 2

2

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.