今天我正在浏览编程挑战网站,看到一个非常容易的挑战,声明用户应尽量使用尽可能少的字符来解决它。
挑战在于将两个阵列相互合并。
例如:
['A','B','C']
和['D','E','F']
会变成['A', 'B', 'C', 'D', 'E', 'F']
挑战声明用户需要使用此开场代码:
def mergeArrays(a, b):
长度为20个字符。当然,我认为回答答案的最简单和最简单的方法是直接使用:return a+b
导致完整的代码:
def mergeArrays(a, b):
return a+b
共29个字元。但是,我注意到很多人用较少的字符来解决它。有些甚至只有24个字符。比所需的起始代码长4个字符。如何以比返回更少的字符返回值?谁能解释一下有人缩短了这个答案?
答案 0 :(得分:5)
This challenge没有限制你必须自己定义这个功能。 24个字符的解决方案是:
{{1}}
答案 1 :(得分:0)
如果你使用一个单字母的函数名称,你可以缩短它,虽然它只是在Python中得到的短,但没有编写你自己的C扩展或覆盖你的变量。
如果你想用更短的东西解决它,可以考虑另一种语言。使用Ruby,你可以得到23个字符,因为它有一个隐含的回报:
def m(a, b)
a + b
end
还有其他语言如Golfscript可以完成同样的事情。或者你可以用J进入神秘主义。
答案 2 :(得分:-2)
我认为你可以在这种特殊情况下使用lambda函数。
res = lambda a,b : a+b