#include #include #include #include using namespace std; struct edge{ int to, from, cost; }; bool comp(const edge& e1, const edge& e2){ if(e1.cost < e2.cost){ return true; }else{ return false; } } int main(void){ int n, m, k, d[1001]; vector e; cin >> n >> m >> k; for(int i=0; i> a >> b >> c; edge e1, e2; e1.from = a; e1.to = b; e1.cost = c; e2.from = b; e2.to = a; e2.cost = c; e.push_back(e1); e.push_back(e2); } sort(e.begin(), e.end(), comp); for(int i=0; i> d[i]; } vector to, tmp; set s; for(int j=0; j::iterator ite; for(ite = s.begin(); ite!= s.end(); ite++){ cout << *ite; if(ite != s.end()){ cout << " "; } } cout << endl; return 0; }