#include "testlib.h" using namespace std; using ll = long long; const int MX = 1e9; int main(int argc, char *argv[]) { registerValidation(argc, argv); ll n = inf.readLong(1LL, MX, "N"); inf.readSpace(); ll m = inf.readLong(0, n * (n - 1), "M"); inf.readEoln(); set > edges; for (ll i = 1; i <= m; i++) { ll s, e; double len; s = inf.readLong(1LL, n); inf.readSpace(); e = inf.readLong(1LL, n); inf.readSpace(); len = inf.readDouble(); inf.readEoln(); ensuref(s != e, "s must not be equal to e: edge: %lld -> %lld", s, e); ensuref(len >= 0, "len must be greater than or equal to zero: %lld->%lld, %lf", s, e, len); ensuref(!edges.contains({s, e}), "Edges must be unique: multiple edge %lld -> %lld", s, e); edges.emplace(s, e); } inf.readEof(); }