---
id: mst
title: "Minimum Spanning Trees"
author: Benjamin Qi
prerequisites: 
 - Gold - Shortest Paths
 - Gold - Disjoint Set Union
description: A subset of the edges of a connected, undirected, edge-weighted graph that connects all the vertices to each other of minimum total weight, where no cycles are allowed.
frequency: 2
---

import { Problem } from "../models";

export const metadata = {
  problems: {
    standard: [
      new Problem("Kattis", "MST", "minspantree", "Easy", false, ["MST"], ""),
      new Problem("CSES", "Road Reparation", "1675", "Easy", false, ["MST"], ""),
    ],
    general: [
      new Problem("Old Silver", "SuperBull", "531", "Easy", false, ["MST"], ""),
      new Problem("Gold", "Walk", "946", "Easy", false, ["Math","Prim"], ""),
      new Problem("Gold", "Fencedin", "623", "Easy", false, ["MST"], ""),
      new Problem("HR", "Spanning Tree Fraction", "https://www.hackerrank.com/contests/w31/challenges/spanning-tree-fraction/problem", "Easy", false, ["MST", "Binary Search"], ""),
      new Problem("Plat", "Fencedin", "625", "Normal", false, ["Kruskal"], ""),
    ],
  }
};

## Sample

<problems-list problems={metadata.problems.standard} />

## Tutorial

<resources>
  <resource source="CPH" title="15 - Spanning Trees" starred>Kruskal's & Prim's</resource>
  <resource source="PAPS" title="12.4">Kruskal's</resource>
  <resource source="cp-algo" title="Prim's" url="graph/mst_prim.html"></resource>
  <resource source="cp-algo" title="Kruskal's" url="graph/mst_kruskal.html"></resource>
  <resource source="cp-algo" title="Kruskal's with DSU" url="graph/mst_kruskal_with_dsu.html"></resource>
</resources>

## USACO Problems

<problems-list problems={metadata.problems.general} />