array.reduce(:lcm)在Ruby中是什么意思?
我目前正在研究Euler项目的第五个问题,你可以找到最小的倍数,它可以被1到20的每个数字平均除以。我的解决方案奏效了,但花了相当长的时间,所以我在网上寻找其他解决方案。我发现这个代码:array.reduce(:lcm)在Ruby中是什么意思?,ruby,arrays,reduce,Ruby,Arrays,Reduce,我目前正在研究Euler项目的第五个问题,你可以找到最小的倍数,它可以被1到20的每个数字平均除以。我的解决方案奏效了,但花了相当长的时间,所以我在网上寻找其他解决方案。我发现这个代码: these = [] 1.upto(20) {|i| these << i} # Easier than writing it out puts "Answer: #{these.reduce(:lcm)}" 这些=[] 1.最多(20){i}这些lcm是一种整数检查文档的方法 返回最小公倍数(
these = []
1.upto(20) {|i| these << i} # Easier than writing it out
puts "Answer: #{these.reduce(:lcm)}"
这些=[]
1.最多(20){i}这些lcm
是一种整数
检查文档的方法
返回最小公倍数(始终为正)。0.lcm(x)和x.lcm(0)返回零
2.lcm(2)#=>2
3.lcm(-7)#=>21
((1)lcm是一种整数检查方法
返回最小公倍数(始终为正)。0.lcm(x)和x.lcm(0)返回零
2.lcm(2)#=>2
3.lcm(-7)#=>21
((1您也可以将tis方法直接应用于数组,它将给出所有元素的lcm
[1,2,3,4].reduce(:lcm) # => 12
[*1..20].reduce(:lcm) # => 232792560
您还可以将tis方法直接应用于数组,它将给出所有元素的lcm
[1,2,3,4].reduce(:lcm) # => 12
[*1..20].reduce(:lcm) # => 232792560
啊,LCM不是1CM,明白了。非常感谢!啊,LCM不是1CM,明白了。非常感谢!你已经澄清了你关于LCM
方法的问题。你明白了吗,reduce(:LCM)
?@Styx_u。你可以用p(1..20)替换你的代码。reduce(:LCM)
您已经澄清了有关方法lcm
的问题。您是否理解,reduce(:lcm)
?@Styx\ux。您可以用p(1..20)替换您的代码。reduce(:lcm)