이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "crocodile.h"
#include <bits/stdc++.h>
#define range(it, a, b) for (ll it = a; it < b; it++)
#define all(x) begin(x), end(x)
#define ll long long
#define ull unsigned long long
#define uset unordered_set
#define umap unordered_map
using namespace std;
vector<vector<int>> adj;
vector<int> memo;
int dfs (int i) {
if (memo[i] != (1 << 30)) return memo[i];
int mini, smini;
mini = smini = (1 << 30);
for (int k : adj[i]) {
int x;
x = (memo[k] == (1 << 30) ? dfs(k) : memo[k]);
if (x < mini) {
smini = mini;
mini = x;
}
else smini = min(x, smini);
}
return (memo[i] = smini);
}
int travel_plan(int N, int M, int R[][2], int L[], int K, int P[]) {
adj.resize(N);
memo.resize(N, (1 << 30));
range(i, 0, M) {
adj[R[i][0]].push_back(R[i][1]);
adj[R[i][1]].push_back(R[i][0]);
}
range(i, 0, K) {
memo[P[i]] = 0;
}
return dfs(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... |