Submission #1196246

#TimeUsernameProblemLanguageResultExecution timeMemory
1196246GoBananas69사이버랜드 (APIO23_cyberland)C++20
0 / 100
16 ms5444 KiB
#include <iostream> #include <algorithm> #include <vector> #include <queue> using std::vector; using std::pair; vector<vector<pair<int, int>>> adj; vector<bool> vis; vector<int> dist; double solve(int n, int m, int k, int h, vector<int> x, vector<int> y, vector<int> c, vector<int> arr) { adj.assign(n, {}); vis.assign(n, false); dist.assign(n, 0); for (int i = 0; i<m; ++i) { int u = x[i], v = y[i], w = c[i]; adj[u].push_back({v, w}); adj[v].push_back({u, w}); } std::queue<int> q; dist[0] = 0; q.push(0); while (!q.empty()) { int u = q.front(); q.pop(); if (vis[u]) continue; vis[u] = true; for (auto &p: adj[u]) { int v = p.first; int w = p.second; dist[v] = dist[u] + w; if (v == h) { return dist[v]; } q.push(v); } } if (vis[h] == false) return -1; else return dist[h]; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...