对于初学者,我们没有足够(半)轻松的挑战。越来越多的简单方法已经被采用。因此,我试图提出一些初学者可能可以实现的目标,但这并不是重复的。
输入:
用您的OS换行符(即\r\n
)分隔的单个字符串,
或包含多个字符串的数组。
输出- 楼梯:
删除所有非字母和非数字符号。所以剩下的就是[A-Za-z0-9]
。然后“建楼梯”;基本上按长度排序,顶部最小,底部最大。
挑战规则:
- 当两个字符串的长度相等时,我们将它们彼此合并为一个大字符串(顺序无关紧要,因此可以是从第一到最后或从最后到第一,无论您喜欢哪两个)。
- 当合并的字符串再次具有相等的长度时,上述规则可以堆叠(请参见测试案例2)。
通用规则:
- 输入为STDIN,仅包含ASCII字符。输出为STDOUT。
- 输出的大小写必须与输入的大小写相同。
每个提交必须是能够编译和运行的完整程序,而不仅仅是方法/功能。编辑:我是新手,所以即使我自己更喜欢完整的程序,也许从现在开始使用默认值确实更好。对不起,每个人都已经发布了完整程序。随时进行编辑,下次我将尽量不更改挑战中的帖子。- 这是代码高尔夫球,因此最短的答案以字节为单位。我可能会接受一年后最短的答案。
不要让代码高尔夫球的答案阻止您发布像C#之类的高尔夫非代码高尔夫球语言!尝试提出所有编程语言的最短答案。 - 随意使用比该问题更新的语言。
测试用例:
输入1:
This is a sample text,
that you will have to use to build stairs.
The wood may be of excellent quality,
or pretty crappy almost falling apart and filled with termites.
Bla bla bla - some more text
Ok, that will do
输出1:
Okthatwilldo
Thisisasampletext
Blablablasomemoretext
Thewoodmaybeofexcellentquality
thatyouwillhavetousetobuildstairs
orprettycrappyalmostfallingapartandfilledwithtermites
输入2:
A
small
one
that
contains
equal
length
strings
for
the
special
rule
输出2:
A Or alternatively: A
length length
oneforthe theforone
smallequal equalsmall
stringsspecial specialstrings
thatrulecontains containsrulethat
步骤说明如下:2:
一阶的长度:
A
one
for
the
that
rule
small
equal
length
strings
special
contains
第一次合并:
A
oneforthe
thatrule
smallequal
length
stringsspecial
contains
长度二阶:
A
length
thatrule
contains
oneforthe
smallequal
stringsspecial
第二次合并:
A
length
thatrulecontains
oneforthe
smallequal
stringsspecial
长度的三阶:
A
length
oneforthe
smallequal
stringsspecial
thatrulecontains
输入3:
Test,
test.
This
is
a
test.
输出3:
a Or alternatively: a
is is
TesttestThistest testThistestTest
输入4:
a
bc
d!
123
输出4:
123 Or alternatively: 123
adbc dabc
contains
不应该出现在输出2中。它与thatrule