【发布时间】:2013-07-08 19:14:35
【问题描述】:
如果您有一个国家/地区的完整巴士时刻表,您如何找出 1 天内两个指定站点之间可载客的最大人数?
我假设巴士时刻表会为您提供每个巴士站的出发和到达时间以及每辆巴士的容量的完整列表。在问题中为您提供了起点和终点。
您可以确定到达目的地所需时间最短的公共汽车序列,并填满从起点出发沿这条路径行驶的所有公共汽车,然后当每辆公共汽车到达停靠点时,只需转移尽可能多的乘客到下一辆离开的公共汽车。然而,这没有理由应该具有最大容量。
解决这个问题的最快速度是多少?例如,假设对于 M 个城市,我总共有 N 条记录;路线记录 Rᵢ 包含号码 Kᵢ、容量 Cᵢ,以及 Kᵢ 城市号码、Kᵢ 到达时间和 Kᵢ 出发时间的列表。 (Rᵢ中的第一个到达时间和最后一个离开时间无关。)广度优先搜索程序可以在O(M * N)时间内解决问题吗?
【问题讨论】:
-
你有编程问题吗?
-
不是重复的。问题完全不同。另一个问题是关于您可以在 any 两个节点之间移动的最大距离,而这个问题是关于两个 specified 节点之间的最大 容量。我也不希望解决方案相似。
-
很公平,但我们仍然需要一个编程问题
-
@felix:我们有哪些关于乘客的数据?
-
这显然不是另一个问题的重复。这是最短路径问题的最大流变体。
标签: algorithm