挑战
给定单词列表,["Programming", "Puzzles", "Code", "Golf"]输出单词crossword-style:
编程
ü
ž
ž
l
电极
ls
F
算法
- 您必须按给定顺序处理列表。
- 单词从水平开始以交替的方向打印。
这两个单词在第一个单词的第一个字母处相交,第二个单词也存在该单词。如果该字母在第二个单词中多次出现,请选择第一个。
示例:
["no", "on"]变为:o n o而不是
n o n
补充说明
- 列表中的相邻单词将至少包含一个普通字母。
["Hi", "there"]不是有效的输入。 - 言语永远不会碰撞。在第一个可能的交点处将始终有足够的空间来打印单词。
["Hello", "there", "end", "hello"]不是有效的输入 - 匹配区分大小写。
- 单词可以向左扩展到顶部。
- 水平单词的字母必须用一个空格分隔。
- 输入列表将至少包含两个单词。
- 所有单词都将与正则表达式匹配:
[A-Za-z]+ - 您可以根据需要打印任意数量的尾随空格或换行符,只要单词已正确链接。
- 另一方面,您可能无法添加其他前导空格。最左边浮动的单词的前导空格为零,其他行的前导空格太多,所有行都正确排列。
- 您的程序必须能够处理任意数量的单词
规则
测试用例
输入列表在第一行,输出从第二行开始。
[“堆栈”,“交换”]
Ë
X
C
H
大头钉
ñ
G
Ë
[“此”,“站点”,“已毕业”,“最终”]
F
是
他的
毕业的
乐
升
ÿ
编码愉快!
@ edc65对我感到羞耻,已修复。感谢您的提示!
—
Denker
site和之间的第一个可能的交点graduated是t