背景:有太多来自布兰迪亚的非法移民越过边界前往阿斯坦。阿斯坦皇帝(Astan)曾命令您挖沟以将其拒之门外,而布兰迪亚(Blandia)必须支付费用。由于所有打字员都已休假直到安排好沟槽,因此您的代码必须尽可能短。*
任务:给定阿斯坦(Astan)和布兰迪亚(Blandia)之间边界的2D地图,让布兰兹(Blands)支付(带有土地)边界战trench。
例如:标记了Astanian单元,标记了A
Blandic单元B
和标记了Trench单元+
(地图框仅是为了清楚起见):
┌──────────┐ ┌──────────┐
│AAAAAAAAAA│ │AAAAAAAAAA│
│ABAAAAAABA│ │A+AAAAAA+A│
│ABBBAABABA│ │A+++AA+A+A│
│ABBBAABABA│ │A+B+AA+A+A│
│ABBBBABABA│→│A+B++A+A+A│
│ABBBBABBBB│ │A+BB+A++++│
│ABBBBABBBB│ │A+BB+A+BBB│
│ABBBBBBBBB│ │A+BB+++BBB│
│BBBBBBBBBB│ │++BBBBBBBB│
└──────────┘ └──────────┘
详细信息:该地图将至少具有三行三列。最上面的行将完全是Astanian,最下面的行将完全是Blandic。
只要输入和输出保持一致,就可以使用任何三个值来表示阿斯坦领土,布兰迪领土和边界trench沟。
自动机公式:在摩尔邻域中具有至少一个Astanian细胞的Blandic细胞成为边界沟槽细胞。
测试用例
[
"AAAAAAAAAA",
"ABAAAAAABA",
"ABBBAABABA",
"ABBBAABABA",
"ABBBBABABA",
"ABBBBABBBB",
"ABBBBABBBB",
"ABBBBBBBBB",
"BBBBBBBBBB"
]
变成:
[
"AAAAAAAAAA",
"A+AAAAAA+A",
"A+++AA+A+A",
"A+B+AA+A+A",
"A+B++A+A+A",
"A+BB+A++++",
"A+BB+A+BBB",
"A+BB+++BBB",
"++BBBBBBBB"
]
[
"AAA",
"AAA",
"BBB"
]
变成:
[
"AAA",
"AAA",
"+++"
]
[
"AAAAAAAAAA",
"AAAABBBAAA",
"AAAABBBAAA",
"AAAABBBAAA",
"AAAAAAAAAA",
"BBBBBBABBB",
"BBBBBBAABB",
"BBBAAAAABB",
"BBBBBBBBBB"
]
变成:
[
"AAAAAAAAAA",
"AAAA+++AAA",
"AAAA+B+AAA",
"AAAA+++AAA",
"AAAAAAAAAA",
"++++++A+++",
"BB++++AA+B",
"BB+AAAAA+B",
"BB+++++++B"
]
*免责声明:任何对实际地缘政治的拒绝纯属巧合!
<sup><sub><sup><sub><sup><sub><sup><sub>
:-P
pass
修建边界战plans的计划导致政府关闭,但没有任何反应。