fork download
  1. int n, m;
  2. cin >> n >> m;
  3. vii adj[n + 1];
  4.  
  5. for (int i = 0; i < m; i++)
  6. {
  7. int a, b, wt;
  8. cin >> a >> b >> wt;
  9. adj[a].push_back({b, wt});
  10. // adj[b].push_back({a,wt});
  11. }
  12.  
  13. priority_queue<pii, vector<pii>, greater<pii>> p;
  14. vi min_dist(n + 1, inf), par(n + 1, -1);
  15.  
  16. // O(V + E(log V))
  17.  
  18. int src = 0;
  19. p.push({0, src});
  20. min_dist[src] = 0;
  21. while (p.size())
  22. {
  23. int curr = p.top().second;
  24. int l = p.top().first;
  25. p.pop();
  26.  
  27. if (min_dist[curr] != l)
  28. {
  29. continue;
  30. }
  31.  
  32. for (auto x : adj[curr])
  33. {
  34. int neighbour = x.first;
  35. int len = x.second;
  36. if (min_dist[neighbour] > len + min_dist[curr])
  37. {
  38. min_dist[neighbour] = len + min_dist[curr];
  39. par[neighbour] = curr;
  40. p.push({min_dist[neighbour], neighbour});
  41. }
  42. }
  43. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp:2:1: error: ‘cin’ does not name a type
 cin >> n >> m;
 ^~~
prog.cpp:3:1: error: ‘vii’ does not name a type; did you mean ‘void’?
 vii adj[n + 1];
 ^~~
 void
prog.cpp:5:1: error: expected unqualified-id before ‘for’
 for (int i = 0; i < m; i++)
 ^~~
prog.cpp:5:17: error: ‘i’ does not name a type
 for (int i = 0; i < m; i++)
                 ^
prog.cpp:5:24: error: ‘i’ does not name a type
 for (int i = 0; i < m; i++)
                        ^
prog.cpp:13:1: error: ‘priority_queue’ does not name a type
 priority_queue<pii, vector<pii>, greater<pii>> p;
 ^~~~~~~~~~~~~~
prog.cpp:14:1: error: ‘vi’ does not name a type
 vi min_dist(n + 1, inf), par(n + 1, -1);
 ^~
prog.cpp:19:1: error: ‘p’ does not name a type
 p.push({0, src});
 ^
prog.cpp:19:16: error: expected unqualified-id before ‘)’ token
 p.push({0, src});
                ^
prog.cpp:20:1: error: ‘min_dist’ does not name a type
 min_dist[src] = 0;
 ^~~~~~~~
prog.cpp:21:1: error: expected unqualified-id before ‘while’
 while (p.size())
 ^~~~~
stdout
Standard output is empty