美文网首页
201812-04 数据中心 (Python实现)

201812-04 数据中心 (Python实现)

作者: tmax | 来源:发表于2019-11-20 16:30 被阅读0次
n = int(input())
m = int(input())
root = int(input()) - 1

edges = []
tree = []
max_weight = 0
union = [i for i in range(n)]
for i in range(m):
    tmp = list( map(int, input().split()) )
    tmp[0] = tmp[0] - 1
    tmp[1] = tmp[1] - 1
    edges.append( tmp )
edges.sort(key = lambda x:(x[2]) )

def findRoot(x):
    if union[x] == x:
        return x
    else:
        return findRoot(union[x])

for i in range(m):
    edge = edges[i]
    u = edge[0]
    v = edge[1]
    u_root = findRoot(u)
    v_root = findRoot(v)
    if u_root != v_root:
        #连接
        uv_max = max(u_root,v_root)
        uv_min = min(u_root,v_root)
        union[uv_min] = uv_max
        tree.append(edge)
        max_weight = max(max_weight, edge[2])
    else:
        continue
    if len(tree) == n-1:
        break
print(max_weight)
#print(tree)

相关文章

网友评论

      本文标题:201812-04 数据中心 (Python实现)

      本文链接:https://www.haomeiwen.com/subject/prnoictx.html