fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. typedef pair<int, int> P;
  5.  
  6. int main() {
  7. ios_base::sync_with_stdio(false), cin.tie(0);
  8.  
  9. int n, m, u, v, bias;
  10. vector<P> adj[10'001];
  11.  
  12. cin >> n >> m;
  13. while(m--) {
  14. cin >> u >> v >> bias;
  15.  
  16. if(u == v)
  17. continue;
  18.  
  19. adj[u].push_back({bias, v});
  20. adj[v].push_back({bias, u});
  21. }
  22.  
  23. int cnt = 0, ans = 0, nxt;
  24. vector<bool> isin(n + 1, 0);
  25. priority_queue<P, vector<P>, greater<P>> pq;
  26.  
  27. isin[1] = true;
  28. for(auto i : adj[1])
  29. pq.push(i);
  30.  
  31. while(cnt < n - 1) {
  32. bias = pq.top().first;
  33. nxt = pq.top().second;
  34. pq.pop();
  35.  
  36. if(isin[nxt])
  37. continue;
  38.  
  39. cnt++;
  40. isin[nxt] = true;
  41.  
  42. if(bias % 2)
  43. ans += bias;
  44.  
  45. for(auto i : adj[nxt])
  46. pq.push(i);
  47. }
  48.  
  49. cout << ans;
  50. }
Success #stdin #stdout 0s 5304KB
stdin
2 1
1 2 4
stdout
Standard output is empty