#218. 「Place the Robots」 放置机器人

「Place the Robots」 放置机器人

给出一个地图(网格),格子分为空地,草地,墙壁。

要在空地上放能向上下左右4个方向发射激光的机器人。

墙壁能挡住激光,草地不能挡住激光也不能放机器人。

在机器人不能互相打到对方的情况下,最多放置多少个机器人。

输入格式

第一行包含整数T,表示共有T组测试数据。

每组数据第一行包含两个整数m和n,表示地图的大小为m行n列。

接下来m行,每行包含n个字符,用来描述整个地图。

‘#’代表墙壁,‘*’代表草地,‘o’代表空地。

输出格式

每组测试数据在第一行输出“Case :id”,id是数据编号,从1开始。

第二行包含一个整数,表示机器人的个数。

数据范围

1m,n501 \le m,n \le 50

输入样例:

2
4 4
o***
*###
oo#o
***o
4 4
#ooo
o#oo
oo#o
***#

输出样例:

Case :1
3
Case :2
5

来源

  • 《算法竞赛进阶指南》
  • acwing 可能含有视频讲解