#include #include #include #include #include #include struct Node { enum class Terrain {land, coast, sea} terrain; int x; int y; }; struct Prim { double distance = std::numeric_limits::infinity(); int previous = -1; bool visited = false; }; struct arbitrary { int first; int second; }; struct fast { int x; int y; bool visited = false; }; struct NarrowNode { int x; int y; };