#P16872. [Ural1411]40 Islands Knights
[Ural1411]40 Islands Knights
题目描述
有一个由若干小岛组成的矩形群岛。小岛排成一个规则的网格,网格宽度为 ,高度为 。
任意两座小岛之间,如果它们的欧氏距离不超过 ,则称它们互为相邻岛屿。因此,一座岛最多有 8 个相邻岛屿:上下左右以及四个对角方向。
你需要在相邻岛屿之间修建桥梁,使得同时满足以下条件:
- 每一座小岛都恰好与 3 座其他小岛通过桥直接相连;
- 任意两座桥在平面上都不能相交;
- 任意两座小岛之间都可以沿桥梁到达;
- 即使任意一座桥被破坏,整个群岛仍然保持连通。
请构造任意一种满足条件的方案。
输入格式
一行两个整数:
W H
分别表示群岛的宽度和高度。
输出格式
如果不存在满足条件的方案,输出:
Imaginary world
否则输出一幅表示桥梁布局的字符图。
- 小岛用字符
O表示; - 水平桥用
-表示; - 竖直桥用
|表示; - 两种对角桥分别用
/和\表示; - 其余位置输出空格。
只需输出任意一种合法方案。
样例输入
8 5
样例输出
O-O-O-O-O-O.O-O
|\|.|..\|/|/|/|
O-O.O-O.O.O.O.O
.\././|../..|/|
O-O.O-O-O-O.O-O
|\..|..../.\..|
O-O.O.O-O-O.O-O
|/./|.|\..|\.\|
O-O-O-O-O-O-O-O
原题的示例为了显示空白位置,可能使用可见字符代替空格;实际提交时未使用的位置应输出普通空格。