Robert是一个著名的工程师。一天,他的老板给他分配了一个任务。任务的背景是:给定一个m×n大小的地图,地图由方格组成,在地图中有3种方格——墙、草地和空地,他的老板希望能在地图中放置尽可能多的机器人。每个机器人都配备了激光枪,可以同时向4个方向(上、下、左、右)开枪。机器人一直待在最初始放置的方格处,不可移动,然后一直朝4个方向开枪。激光枪发射出的激光可以穿透草地,但不能穿透墙壁。机器人只能放置在空地。当然,老板不希望机器人互相攻击,也就是说,两个机器人不能放在同一行(水平或垂直),除非他们之间有一堵墙隔开。 给定一张地图,程序需要输出在该地图中可以放置的机器人的最大数目。
输入
输入文件的第1行为一个整数T (T≤11),代表测试数据的数目。对每个测试数据,第1行为两个整数m和n (1≤m, n≤50),分别代表地图的行和列的数目。接下来有m行,每行有n个字符,每个字符都是“#”,“*”或“o”,分别代表墙壁、草地、空地。
输出
对每个测试数据,首先在第1行输出测试数据的序号,格式为:Case :id,其中id是测试数据的序号,从1开始计数。第2行输出在该地图中可以放置的机器人最大数目。
样例
| 标准输入 复制文本 |
2 5 5 o***# *###* oo#oo ***#o #o**o 4 4 o*** *### oo#o ***o |
| 标准输出 复制文本 |
Case :1 4 Case :2 3 |