#include "bits/stdc++.h"
#include "crocodile.h"
// #include "grader.cpp"
using namespace std;
#define MAXN 500005
#define ll long long
#define ff first
#define ss second
ll p[MAXN], n, a[MAXN];
vector <pair<int,int>> E[MAXN];
void dfs(int x,int par) {
int x1 = INT_MAX, x2 = INT_MAX;
for(auto i : E[x]) {
if(i.ff == par) continue;
if((int)E[i.ff].size() > 1)dfs(i.ff, x);
if(x1 > i.ss + a[i.ff]) {
x1 = i.ss + a[i.ff];
}
if(x2 > x1) swap(x1, x2);
}
a[x] = x1;
}
int travel_plan(int N, int M, int R[][2], int L[], int K, int P[]){
for(int i = 0;i < M; i++) {
// cout << R[i][0] << " " << R[i][1] << "\n";
// continue;
E[R[i][0]].push_back({R[i][1],L[i]});
E[R[i][1]].push_back({R[i][0],L[i]});
}
// return 0;
for(int i = 0; i < K; i++) {
p[P[i]] = 1;
}
dfs(0, -1);
return a[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... |