Algorithm 如何在有向图中找到使权重乘积最大化的路径?

Algorithm 如何在有向图中找到使权重乘积最大化的路径?,algorithm,graph,weighted-graph,Algorithm,Graph,Weighted Graph,给定一个权重在0和1之间的有向图。如何找到使重量乘积最大化的路径 想要: 我已经找到了max产品 def maximum_likelihood(num_vertices, edges, s, t): ll = [0] * num_vertices ll[s-1] = 1 for edge in edges: dst = edge[1]-1 prev = edge[0]-1 p = edge[2]

给定一个权重在0和1之间的有向图。如何找到使重量乘积最大化的路径

想要:

我已经找到了max产品

def maximum_likelihood(num_vertices, edges, s, t):
    
    ll = [0] * num_vertices
    ll[s-1] = 1

    for edge in edges:
        dst = edge[1]-1
        prev = edge[0]-1
        p = edge[2]
            
        if ll[dst] < ll[prev] * p:
                ll[dst] = ll[prev] * p
    return ll[t-1]
def最大似然(顶点数、边数、s、t):
ll=[0]*num_顶点
ll[s-1]=1
对于边中的边:
dst=边缘[1]-1
上一个=边[0]-1
p=边缘[2]
如果ll[dst]
提示:可以将权重的负对数之和最小化。
def maximum_likelihood(num_vertices, edges, s, t):
    
    ll = [0] * num_vertices
    ll[s-1] = 1

    for edge in edges:
        dst = edge[1]-1
        prev = edge[0]-1
        p = edge[2]
            
        if ll[dst] < ll[prev] * p:
                ll[dst] = ll[prev] * p
    return ll[t-1]