#P12785. [ICPC 2024 Yokohama R] Remodeling the Dungeon 2
[ICPC 2024 Yokohama R] Remodeling the Dungeon 2
题目背景
译自 ICPC 2024 Yokohama Regional Contest。
题目描述
Icpca 王国的女王平静地居住在一座城堡中。一天,她决定重造城堡的地牢。
地牢是一个由方形单元格组成的矩形网格。部分单元格是可进入的房间,而其他则是不可进入的管道空间。所有相邻单元格之间都被一堵墙隔开。某些相邻房间之间的墙上安装了用于通行的门。地牢中任意一对房间都可以通过这些门连通。
女王希望重造地牢,使得任意一对房间之间仅存在唯一路径。此外,任意两个都只有一扇门的房间应通过一条经过偶数扇门的路径相连。 由于成本限制,重造时只能封锁部分(可能为零扇)门。
你的任务是找到一种满足女王要求的地牢重造方案。
输入格式
仅一组数据,格式如下所示:
两个整数 和 表示地牢大小为 ()。
每个字符 (, )为 .
或 #
,其含义如下:
- 当 和 均为偶数时, 表示位于地牢第 行(北向南)、第 列(西向东)的单元格,记作单元格 。若为
.
则是房间,若为#
则是管道空间。 - 当 为奇数且 为偶数时,表示一堵墙。若 或 ,则为地牢外墙(始终为
#
)。否则 表示单元格 和 之间的墙。若为.
则该墙有门,若为#
则无门(门仅存在于两个房间之间的墙上)。 - 当 为偶数且 为奇数时,同样表示一堵墙。若 或 ,则为地牢外墙(始终为
#
)。否则 表示单元格 和 之间的墙。若为.
则该墙有门,若为#
则无门(门仅存在于两个房间之间的墙上)。 - 当 和 均为奇数时, 始终为
#
,对应墙体的交叉点。
数据保证地牢中至少有一个房间,且任意一对房间存在连通路径。
输出格式
若无法按要求重造地牢,输出 。否则第一行输出 ,接着按输入格式输出重造后的地牢配置(若有多种可能配置,输出任意一种即可)。
3 3
#######
#.....#
#.#.###
#.#...#
#.#.#.#
#.....#
#######
Yes
#######
#.....#
#.#####
#.#...#
#.###.#
#.....#
#######
3 3
#######
#.....#
###.###
###...#
###.#.#
#.....#
#######
Yes
#######
#.....#
###.###
###...#
#####.#
#.....#
#######
3 3
#######
#.....#
#.###.#
#.###.#
#.###.#
#.....#
#######
No