Untitled
unknown
plain_text
2 years ago
1.4 kB
4
Indexable
/****************************************************************************** Welcome to GDB Online. GDB online is an online compiler and debugger tool for C, C++, Python, PHP, Ruby, C#, OCaml, VB, Perl, Swift, Prolog, Javascript, Pascal, COBOL, HTML, CSS, JS Code, Compile, Run and Debug online from anywhere in world. *******************************************************************************/ #include <stdio.h> #include <iostream> #include <vector> #include <set> #include <queue> using namespace std; #define pii pair<int, int> const int N = 410; int n, m; vector <pii> g[N]; bool first[N]; int a[N], b[N], w[N]; priority_queue <pii> q; int main() { cin >> n >> m; for (int i = 1; i <= m; i++) { cin >> a[i] >> b[i] >> w[i]; g[a[i]].push_back({b[i], w[i]}); g[b[i]].push_back({a[i], w[i]}); } first[1] = true; for (pii p : g[1]) { int u = p.first; int w = p.second; q.push({-w, u}); } long long ans = 0; while (q.size() > 0) { int v = q.top().second; int cost = -q.top().first; q.pop(); if (first[v]) continue; first[v] = true; ans += cost; for (pii p : g[v]) { int w = p.second; int u = p.first; if (!first[u]) { q.push({-w, u}); } } } cout << ans; return 0; }
Editor is loading...