我甚至不知道如何解释这个......我一直在找algos,但没有运气。
我需要一个函数,它会从我传递的两个数字作为参数返回一个递增较大数字的数组(不确定哪种曲线)。
例:
$length = 20;
get_numbers(1, 1000, $length);
> 1, 2, 3, 5, 10, 20, 30, 50, 100, 200, 500... // let's say that these are 20 numbers that add up to 1000
知道我怎么能这样做..?我想我不够聪明,无法弄明白。
答案 0 :(得分:1)
指数曲线怎么样?示例Python实现:
begin = 1
end = 1000
diff = end - begin
length = 10
X = diff**(1.0/(length-1))
seq = []
for i in range(length):
seq.append(int(begin+X**i))
print seq
(注意:**
是取幂的Python运算符。其他语言可能会也可能不会使用^
代替
结果:
[2, 3, 5, 10, 22, 47, 100, 216, 464, 999]