This documentation is automatically generated by online-judge-tools/verification-helper
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
using llong = long long;
//===
template <class T>
struct Edge {
int src, to;
T cost;
Edge(int to, T cost) : src(-1), to(to), cost(cost){};
Edge(int src, int to, T cost) : src(src), to(to), cost(cost){};
operator int() const {
return to;
};
};
template <class T>
using WeightedGraph = vector<vector<Edge<T>>>;
using UnWeightedGraph = vector<vector<int>>;
//===
int main() {
return 0;
}
#line 1 "graph/basic.cpp"
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
using llong = long long;
//===
template <class T>
struct Edge {
int src, to;
T cost;
Edge(int to, T cost) : src(-1), to(to), cost(cost){};
Edge(int src, int to, T cost) : src(src), to(to), cost(cost){};
operator int() const {
return to;
};
};
template <class T>
using WeightedGraph = vector<vector<Edge<T>>>;
using UnWeightedGraph = vector<vector<int>>;
//===
int main() {
return 0;
}