2012-04-19 98 views
0

好吧我需要将间隔分成n个不等的子间隔,间隔长度是递增的。拆分间隔

可以说我有一个间隔(10,90)

我需要n个子区间。比方说n = 4的

需要子间隔像(10,20),(20,35),(35,55),(55,90)

子间隔长度必须是递增的顺序

我该怎么做?

+4

好问题,我的意思是'我该怎么做?'是一个很好的问题。你会如何做到这一点?至少显示一些你已经试图自己解决问题的证据。我们在这里帮助,而不是为你做你的工作。 – 2012-04-19 12:12:05

+0

呃..我需要这个lua程序。我实际上开始手动指定子区间。我有一些特定的值n和你看到的原始间隔,所以手动分裂并不是太困难...丑陋,是的,但有效.. 我仍然认为会有一个很好的数学解决方案,尝试google搜索并最终在这里发布了一个问题。 希望我能找到一个好的解决方案。 – SatheeshJM 2012-04-19 12:43:08

+1

有无限多的这样的子区间序列。你想要任何这样的子区间序列? – Memming 2012-04-19 13:47:30

回答

0

您可以使用任何单调递增和凸函数来构建间隔。例如,二次函数给了我们这样的表达:

DividingValue [I = 1..N-1] = A + ROUND(I^2 *(BA)/(N^2))

其中( A,B)是你的间隔。

+0

非常感谢! 猜我的数学太生疏了。 – SatheeshJM 2012-04-20 13:41:56

0

例如,您可以选择长度为1,2,3的区间......因此,在您分割[10,90]的示例中,您应该有[[10], [11,12], [13,14,15], [16..90]]

+0

感谢您的回答! :) 虽然我使用MBO的解决方案。更一般化。 – SatheeshJM 2012-04-20 13:42:44