(红宝石)
需要“prime”
定义C(n,r)
r=[r,n-r].最小值
如果r==0,则返回1
如果r==1,则返回n
分子=(n-r+1..n).to_a
分母=(1..r).to_a
(2..r).each{|p|
枢轴=分母[p-1]
如果枢轴>1
偏移=(n-r)%p
(p-1).步骤(r-1,p){|k|
分子[k-偏移量]/=枢轴
分母[k]/=枢轴
}
结束
}
结果=1
(0..r-1)每个{|k|
如果分子[k]>1,则结果*=分子[k]
}
返回结果
结束
i=0
a、 b=1,5
ary=[1]
当i<n时
i+=1
a、 b=b,((((34*i+51)*i+27)*i+5)*b-i**3*a)/(i+1)**3
ary<<a
结束
ary系列
结束
p_ary=素数取(n+3)[3..-1]
ary=[]
p_ary.each{|i|
j=C(2*i,i)*a[i-1]-2
如果j%i**5>0,则中断
ary<<j/i**5
}
ary系列
结束