如何将 n 个对象分布在 m 个盒子中,使其始终彼此均匀间隔?

问题描述 投票:0回答:1

我的数组中有 12 个索引,需要填充 1-11 个对象。应该以这样的方式完成:对象之间至少稍微均匀地间隔。

step = num_boxes // num_objects
indices = [i * step for i in range(num_objects)]

到目前为止我已经尝试过上述方法。例如,对于 3 个对象,索引将为 [0, 4, 8]。这样最后4个盒子就空了。这是不希望的。理想情况下,第一个和最后一个框(或最后一个框)应被填充,其余的应均匀间隔。

python arrays list algorithm visual-studio-code
1个回答
0
投票

对于 N 个对象,您有 N-1 个空格,最后一个数字应该位于

num_boxes-1

stepf = (num_boxes-1) / (num_objects-1)
indices = [int(i * stepf) for i in range(num_objects)]
© www.soinside.com 2019 - 2024. All rights reserved.