甲弹跳是仙女棋子,其通过移动的类别“跳跃”。普通骑士是(1,2)剑,这意味着每次移动都涉及在正交方向上移动1平方和在垂直方向上移动2平方的距离。
.o.o.
o...o
..N..
o...o
.o.o.
有许多不同的跨越。(1,3)叶片称为长骑士或骆驼。其移动模式如下所示:
..o.o..
.......
o.....o
...L...
o.....o
.......
..o.o..
还有(2,2)Alfil ...
o...o
.....
..A..
.....
o...o
...甚至(0,1)Wazir。
.o.
oWo
.o.
挑战
给定一对数字作为输入,输出相应的运动图。您可以编写程序或函数,其输入通过STDIN /命令行提供或作为参数,而输出通过STDOUT或返回值提供。这是代码高尔夫球。
输入值
输入将是两个整数和一个大写字母的逗号分隔列表。这两个整数将在范围内0-7
(包括端值)并且以非降序排列。输入和输出的尾随换行符是可选的。
以下是上述四个示例的输入:
1,2,N
1,3,L
2,2,A
0,1,W
输出量
输出将是一个方形的多行字符串。大写字母将放置在中间,以表示作品的当前位置。移动位置将以4或8个小写字母表示o
s表示。广场上的所有其他空间都将填充句点。
如果移动方式为0,0
,则仅输出大写字母。
提示一下,如果第二个整数(较大的整数)的值为N,则该正方形将始终具有边长2N + 1。该o
旨意永远是正方形的周长。
其他测试用例
1,1,F
o.o
.F.
o.o
5,7,Q
..o.........o..
...............
o.............o
...............
...............
...............
...............
.......Q.......
...............
...............
...............
...............
o.............o
...............
..o.........o..
0,0,J
J
为什么骆驼测试用例字母为“ L”?我知道不要紧,但是将其更改为“ C”可能会有所帮助。
—
Rɪᴋᴇʀ
@RikerW我的选择并不完全是任意的,那是它的“标准化”字母。
—
PhiNotPi
好的。那讲得通。
—
Rɪᴋᴇʀ
对于一个函数,可以使用3个参数,还是要用逗号分隔单个字符串参数?
—
edc65 '16