Submission #1003275

#TimeUsernameProblemLanguageResultExecution timeMemory
1003275coolboy19521Crocodile's Underground City (IOI11_crocodile)C++17
0 / 100
1 ms2652 KiB
#include "bits/stdc++.h"
#include "crocodile.h"
#define i64 long long

using namespace std;

const int sz = 1e5 + 5;

vector<vector<int>> aj[sz];
i64 d[sz];

void dfs(int v, int p = -1, i64 l = 0) {
	d[v] = l;
	for (auto& u : aj[v]) {
		int to = u[0];
		int we = u[1];
		if (to != p) {
			dfs(to, v, l + we);
		}
	}
}

int travel_plan(int N, int M, int R[][2], int L[], int K, int P[])
{
	for (int i = 0; i < M; i ++) {
		int a = R[i][0];
		int b = R[i][1];
		aj[a].push_back({b, L[i]});
		aj[b].push_back({a, L[i]});
	}

	dfs(0);

	i64 mx = 0;

	for (int i = 0; i < K; i ++) {
		mx = max(mx, d[P[i]]);
	}

	return mx;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...