在图中某些点的路径中添加额外成本

问题描述

我有一个包含多个节点和边的图。每条边都有定义的长度和成本(取决于长度和其他一些因素)。但是,在假设每 50 个单位长度之后,我想增加一些额外费用。这可能吗?

举个例子,假设我正在使用 Dijkstra's 来找到最短路径。我可以决定根据最短的长度或最低的成本找到这条路径。但是,如前所述,我需要根据长度增加一些额外费用。所以我可能会在一个节点上结束这条路径,已经有 5000 的成本和 40 的长度,然后它需要弄清楚下一步。

在这个例子中,它可以有两种方式。两种方式都只有两条边才能到达最终节点。第一种方式的最后两条边的总长度为 9,成本为 900。第二种方式的长度为 11,成本仅为 500,因为这种方式虽然更长,但成本更低。但是,因为我总共超过了 50 个单位长度,并且增加了 500 的额外成本。因此,第一种方式将是最便宜的选择。但 Dijkstra 的情况并非如此,因为它不知道每 50 个单位长度增加的额外成本,即取决于所选路径的变量。

所以基本上我的问题是:有没有办法实现这样的东西?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)