脑洞车辆分配算法

2020-07-27 16:18:31 +08:00
 tivizi
  1. 有目的地d1, d2, d3
  2. 有学生1000人,200人去 d1, 500人去 d2, 300人去 d3,去的 d1 需要3小时,去 d2 需要4小时,去 d3 需要5小时
  3. 50 人校车 5辆,30 人校车 10辆,10 人校车 10辆,载 1 人摩托车 10辆(这些车速度一致,不用考虑,只考虑用车时间)
  4. 车辆可以复用,但每量车使用时间相差不超过 5 小时
  5. 最快把学生运送到目的地

怎么安排这些车拉同学去目的地最佳?

最终根据这些前提推广为算法。即目的地数量可变,但每个目的地都有确定的用车时间,去每个目的地的人数可变,各种车的数量可变。

我正在想怎样分配最佳,大家也一起想想。

868 次点击
所在节点    程序员
3 条回复
tivizi
2020-07-27 16:20:20 +08:00
主题排名太靠后了。。。
yuruizhe
2020-07-27 22:02:35 +08:00
不考虑空车返程时间的话,总运量 200*3+500*4+300*5=5900(小时人)
每批可以运送 50*5+30*10+10*10+1*10=660(人)
运输总耗时 5900/660=8.9 小时

不过“每量车使用时间相差不超过 5 小时”是啥意思?
tivizi
2020-07-28 07:26:23 +08:00
@yuruizhe 谢谢🙏

这个 5 小时是指:因为车辆可以复用,但不能一直复用某些车,而停用某些车,要保证每辆车用的时间都差不多,最多不能超过这个值

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/693485

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX