木块移动总距离最小问题

一条直线上有n(n>1)个间距不等的小木块(木块均相同),要把他们移动到一起,如何才能使移动的总距离最小?(诞生于公交车)
豆瓣《物理学 Physics小组》讨论地址:http://www.douban.com/group/topic/14352736/

已知信息:
1)任意两个木块间距离差
2)距离差之和最小
3)以两端为目标点进行移动的距离差之和较大(重叠块较多)

归纳下就是:求距离差之和最小问题,中位数(或段)的距离差之和最小。
从左自右依次为n个木块进行坐标编号为(0,0),(A1,0)....(An,0)
1,如果n为偶数,则这些点在坐标集[An/2,A (n/2)+1]上。
2,如果n为奇数,则这个点在坐标[A(n+1)/2]处
进行下变异,若木块间没有阻隔*(或非直线排列)的话,那就是一个图了。

posted @ 2010-12-10 21:28 overred 阅读(119) 评论(0) 编辑 收藏