#include "crocodile.h"
#include <bits/stdc++.h>
using namespace std;
int travel_plan(int N, int M, int R[][2], int L[], int K, int P[])
{
vector<vector<pair<int, int>>> g(N);
for(int i = 0; i < M; i++){
g[R[i][0]].push_back({R[i][1], L[i]});
g[R[i][1]].push_back({R[i][0], L[i]});
}
multiset<pair<int, int>> m;
vector<int> vis(N);
vector<int> dis(N, 1e9);
for(int i = 0; i < K; i++){
m.insert({0, P[i]});
vis[P[i]] = 1;
}
while(m.size() > 0){
auto [time, k] = *m.begin();
m.erase(m.begin());
vis[k]++;
if(vis[k] != 2) continue;
dis[k] = time;
for(int i = 0; i < g[k].size(); i++){
if(vis[g[k][i].first] >= 2) continue;
m.insert({time+g[k][i].second, g[k][i].first});
}
}
return dis[0];
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |