7-45 最小支撑树

给定一个包含n个顶点的正权无向图,编号为0至n-1。请编写程序求出其最小支撑树,并计算其边权之和。

输入格式:

输入包含多组数据。每组数据第一行为2个整数n和e,均不超过1500,分别表示图的顶点数和边数。接下来e行表示每条边的信息,每行为3个非负整数a、b、c,其中a和b表示该边的端点编号,c表示权值,不超过109。各边并非按端点编号顺序排列。

输出格式:

对于每组数据,若存在最小支撑树则输出一个整数,为最小支撑树各边权值之和(各边权值之和可能超出int型范围,请使用long long类型);若不存在最小支撑树,则输出“There is no minimum spanning tree.”。

输入样例:

4 5
0 1 1
0 3 1
1 3 5
1 2 1
2 3 8
4 2
0 1 1
2 3 8

输出样例:

3
There is no minimum spanning tree.

参考代码

#include <stdio.h>
#include <stdlib.h>

// 定义边的结构体
typedef struct {
    int u; // 边的一个顶点
    int v; // 边的另一个顶点
    long long w; // 边的权重
} Edge;

// 用于比较两条边权重的函数
int compare(const void *a, const void *b) {
    Edge *edgeA = (Edge *)a;
    Edge *edgeB = (Edge *)b

相关推荐

  1. 7-45 支撑

    2024-05-02 12:12:01       34 阅读
  2. 生成

    2024-05-02 12:12:01       39 阅读
  3. 生成

    2024-05-02 12:12:01       36 阅读
  4. 数据结构:以Kruskal为例判断支撑是否唯一

    2024-05-02 12:12:01       101 阅读
  5. 算法——生成

    2024-05-02 12:12:01       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-02 12:12:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-02 12:12:01       101 阅读
  3. 在Django里面运行非项目文件

    2024-05-02 12:12:01       82 阅读
  4. Python语言-面向对象

    2024-05-02 12:12:01       91 阅读

热门阅读

  1. PyTorch与深度学习:探索人工智能的新前沿

    2024-05-02 12:12:01       37 阅读
  2. C# Windows Forms 应用程序中连接到 数据库

    2024-05-02 12:12:01       34 阅读
  3. 【c++】【贪心】机器生产

    2024-05-02 12:12:01       32 阅读
  4. 企微SOP新风尚:构建高效、精准的营销流程

    2024-05-02 12:12:01       31 阅读
  5. 7、Python:数值类型

    2024-05-02 12:12:01       32 阅读