题目描述
新奥德卫莱市是正方形网状布局,每个建筑物占着一些连通的格子,两个有建筑物的格子如果有角接触就算相连,不需要连接道路。道路只能在正方形的边上建造,并且只能是直线且连接两个建筑。
给你一个建筑示意图,你要算出连接所有建筑的最小道路数。如果这是不可能的,找出最少的无法连接的建筑群数。在可连接所有建筑物的情况下,如果多种方案道路数都是最小的,选择在网格中道路总长度最小的方案。道路可以互相穿过,但在这种情况下道路被判定互不相干,之间无法连接。
下图说明了4种可能的城市配置。城市1包含5个建筑,被4条道路连接起来,总长度为4。城市2中,因没有建筑共享网格线所以无法建立道路。在城市3中,因为只有1个建筑所以我们不需要道路。在城市4中,最好方案是用1条长度为1的道路连接两个城市,剩下两个不连通的建筑群(一个是两个建筑,一个是一个建筑)。
左上是城市1 ,中上是建路后的城市1 ,右上是不能建路的城市2,左下是不需要建路的城市3,中下是城市4,右下是建路后的城市4。
输入格式
输出格式
每组数据间用空行隔开。见下面样例。
样例输入
3 5 #...# ..#.. #...# 3 5 ##... ..... ....# 3 5 #.### #.#.# ###.# 3 5 #.#.. ..... ....# 0 0
样例输出
City 1 4 bridges of total length 4 City 2 No bridges are possible. 2 disconnected groups City 3 No bridges are needed. City 4 1 bridge of total length 1 2 disconnected groups