← 返回题库
中级

最小生成树经典

未完成
中级参考 代码结构已给出,请填写 ____ 处
def solve(____):
    edges_list = [list(map(int, e.split(____))) for e in str(____).split(____)]
    edges_list.sort(____)
    parent = list(range(____))
    def find(____):
        while parent[x] != x:
            parent[x] = parent[parent[x]]
            x = parent[x]
        return x
    def union(____):
        pa, pb = find(____), find(____)
        if pa == pb:
            return False
        parent[pa] = pb
        return True
    total = ____
    cnt = ____
    for u, v, w in edges_list:
        if union(____):
            total += w
            cnt += ____
            if cnt == n - ____:
                break
    print(____)

示例

输入
solve(4, '1,2,1;1,3,2;2,3,3;2,4,4;3,4,5')
期望输出
7
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码