这是一个简单的挑战:给定整数序列,找到其中的所有整数之和。
但是有一个转折。您的分数是代码与以下短语(挑战)之间的Levenshtein距离:
给定一组整数,找到其中所有整数的总和。
您可以假设输入中没有换行符或尾随空格。
输入/输出示例:
Input: 1 5 -6 2 4 5
Output: 11
Input: 1 -2 10
Output: 9
可在此处找到Levenshtein距离的在线计算器:http : //planetcalc.com/1721/
这是一个简单的挑战:给定整数序列,找到其中的所有整数之和。
但是有一个转折。您的分数是代码与以下短语(挑战)之间的Levenshtein距离:
给定一组整数,找到其中所有整数的总和。
您可以假设输入中没有换行符或尾随空格。
输入/输出示例:
Input: 1 5 -6 2 4 5
Output: 11
Input: 1 -2 10
Output: 9
可在此处找到Levenshtein距离的在线计算器:http : //planetcalc.com/1721/
Answers:
#Given a set of integers, find the
sum#of all integers in it.
这提供了内置函数sum
,该函数可以对进行求和sum({3,5,7})==17
。其余部分被评论。距离为3,具有3个修改:
#
sum
用#
没意见!
Given(a)=(Set;of;integer; find; [sum(a),all,integer,in][1])
这将创建一个名为的函数Given
,该函数接受一个数组并返回其元素的总和。由于许多Julia内建函数都有相关的名称(但与此处的计算无关),我们只列出一些用分号分隔的名称。只要它们不是列出的最后一项,它们就不会退还。最后一部分实际上是一个包含求和和三个函数的数组,然后选择第一个元素和。
Given=(a;set;of=integer; find;th;[sum,of,all,integer, in][])
- “考虑”,那么仍然有效相同,但这18的距离
~{Given a set of integers+ find the sum of all integers in it}*
这是一个完整的程序,不使用任何注释(但要注意很多)。
在Web GolfScript中在线尝试。
Given a set of integers find the sum of all integers in it*0+Total@Input[]
它不使用任何注释或无操作,而是将所有单词声明为变量,然后通过乘以零来消除它们。
它还有一个好处,它是唯一一个实际上将一组整数作为输入的答案。
输入{1,2,3}
提供6
预期的输出。
不幸的是,Mathematica Sum
函数不能执行问题中的任务,因此需要更多的字节数。
Given a set of integers find the sum of all *0+Total@Input[]
距离14
我试过了。
float a_set_of(int[] r){return IntStream.of(r).sum()}//n it.
Given a set of integers, find the sum of all integers in it.
Java:P。
Given aset of integers, ;find the sum of all integers in it.
在RProgN中,a,set,find和sum都是命令。默认情况下,语法中会忽略其他所有内容。a将字母推入堆栈,这将导致求和失败。Set永远不会有足够的参数,因此总是会失败并出错。查找或者参数数量错误,或者尝试将字母与输入堆栈进行比较,这是行不通的。
a和set都可以通过删除两者之间的空格来“固定”,因为aset不是函数,因此将被忽略。查找只是在开始处插入了一个额外的字符,导致它也无法被识别和忽略。只剩下sum,可以方便地对输入堆栈的内容求和。
最后,RProgN可能会赢得一些大奖!
{:+}e# a set of integers, find the sum of all integers in it.
这是一个匿名函数,该函数从堆栈中弹出一个数组,并返回一个整数。
感谢@AboveFire将距离缩短了1。
+/ / Given a set of integers, find the sum of all integers in it.
我猜想符号与Leve的距离不太合适...
哈哈哈 最初,我没有 LeveXXX距离,所以我得到了60。然后,由于有帮助的注释,该距离下降到了5。
加入琐碎的无注释俱乐部,但是很多无操作性golflang答案...
Given a set of integers, find the sum of all integers in $+g
该代码实际上记录了自己。也许s/in/using/
更准确的描述。作为命令行参数给出的整数将被读入列表中g
,列表在加法时会被折叠并自动打印结果。大多数其他所有内容只是变量,没有操作。
一开始我很惊讶,而且s, f
没有抱怨,因为f
提到了主要功能,而采用代码块的范围是没有道理的。但是后来我意识到:,
范围运算符在给定函数参数时,只会构造另一个函数(就像Pip中的许多运算符一样)。所以我认为s, f
评估为{Given a set of integers, find the sum of all integers in " ",$+g}
。(然后将其丢弃。)
最后一点:这段代码适用于当前版本的Pip,在该版本中我尚未分配G
任何内容。如果在将来的版本中G
使用二进制或三元运算符,则距离4版本是必要的。使用given
而不是Given
将很好地工作。
@ivOn a ;et I+ i?tegers, fu;d <he sum of all integers in it.
包裹在立方体上
@ i v
O n a
; e t
I + i ? t e g e r s , f
u ; d < h e s u m o f a
l l i n t e g e r s i n
i t .
. . .
. . .
执行代码是
I+i
输入一个整数,添加到TOS然后输入一个字符?
测试字符值。向左重定向-1(输入结束)或向右重定向其他任何内容(无法输入0)
;O@
弹出TOS,输出总和并退出<;u
重定向,弹出TOS并掉头进入起点这是一个相当长的版本,实际上是后期。
但是无论如何,这里是:
<?=$n_a_set_of_integers_fi=array_sum($f_all_integers_in_i);
为此,您只需使用密钥通过POST / GET / COOKIE / session将其传递给数组f_all_integers_in_i
。
?[+z1 <f]d sf xp#egers, find the sum of all integers in it.
评论:
? # read numbers
[ # start macro
+ # add up last two things on stack
z1 <f # if stack size is more than 1, execute macro at register 'f'
] # end macro
d # dupe it
sf # saving one copy to register 'f'
x # and executing another
p # printing result
如果输入1,它会抱怨堆栈为空,但仍然有效,删除0将节省2个差异。
(([]){[{}]{}([])}{})ers, find the sum of all integers in it.
由于原始文本中没有括号,因此可以归结为Brain-Flak中的代码高尔夫球问题。但这仍然不能使这个答案变得微不足道,因为Brain-Flak中的答案很少。
一个人的直觉可能是以下代码
({{}})
哪个有效... 除非堆栈上没有零,在这种情况下,它一直累加到零。要解决此问题,我们必须使用堆栈高度检查堆栈是否为空。可以这样设置
([]) #{ Push stack height }
( #{ Start Push }
{ #{ Loop until zero }
<{}> #{ Silently Pop the last height }
{} #{ Grab a value from the stack }
<([])> #{ Silently push the stack height again }
} #{ End loop }
{} #{ Remove last stack height }
) #{ Push the result }
这是可行的,但是有问题。我们一直使循环中的爆音和推动静音,但它们几乎相等,因此应该有一种消除它们的方法。如果我们尝试
([])({[{}]{}([])}{})
我们n
每次都结束。因此,这就是窍门,我们已经有了一个n
选址,我们只是将其移至推动平衡的过程中。
(([]){[{}]{}([])}{})
2^8
回答是多少?
这是一个功能。integers, find the sum of all inte
是输入。
for each(et)of(integers, find the sum of all inte
change[s v]by(et
end
report(s
integers, find the sum of all inte
是一个参数,只是没有与scratchblocks3语法中的常规变量区分开,这就是我澄清的原因