查找范围内的增量x数量

时间:2015-02-18 17:03:05

标签: algorithm increment

我甚至不知道如何解释这个......我一直在找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

知道我怎么能这样做..?我想我不够聪明,无法弄明白。

1 个答案:

答案 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]