#pragma once
#include "rng.hpp"
#include "solution.hpp"

// Leaf-relocation local search (first improvement, random leaf order).
// For each degree-1 node, tries reattaching it to a cheaper neighbor
// that does not violate degree constraint d.
// Returns true if any improvement was made.
bool vnd3(Solution& sol, int d, RNG& rng);
bool vnd3bi(Solution& sol, int d, RNG& rng);
