计算图遍历中的行程次数

时间:2018-02-10 19:24:24

标签: graph dynamic-programming bellman-ford

Hello Stack Overflow社区,

我正试图解决这个问题: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1040

问题是根据边缘之间的容量找到最佳路径。我知道这可以使用动态编程解决,我对它们提供的示例感到困惑:

Map

根据问题描述,如果有人试图从城市1到7获得99人,路线应该是1-2-4-7我得到的,因为每个边缘的重量代表最大乘客数量可以马上去。我没有得到的是描述说它至少需要5次旅行。 5来自哪里? 1-2-4-7是3跳,如果我这次旅行我计算4次旅行,因为25次是路线中最有限的跳跃,我会说你需要99/25或至少4次旅行。这是一个错字,还是我错过了什么?

1 个答案:

答案 0 :(得分:1)

给出问题陈述的第一行:

  

先生。 G.是一名导游。

G先生可能总是出现在公共汽车上,因此旅行次数的等式是:

x = (ceil(x) + number_of_passengers) / best_route

而不是简单地:

x = number_of_passengers / best_route

或者,对于您的号码:

x = (ceil(x) + 99) / 25

可以通过以下方式解决:

x == 4.16 (trips)