제출 #1223393

#제출 시각아이디문제언어결과실행 시간메모리
1223393colossal_pepe공장들 (JOI14_factories)C++20
0 / 100
8090 ms49952 KiB
#include "factories.h" #include <bits/stdc++.h> using namespace std; using ll = long long; const ll INF = 1e18; int n; vector<vector<pair<int, ll>>> g; ll dfs(int u, int par, vector<bool> &imp) { if (imp[u]) return 0; ll ret = INF; for (pair<int, ll> v : g[u]) { if (v.first == par) continue; ret = min(ret, v.second + dfs(v.first, u, imp)); } return ret; } void Init(int N, int A[], int B[], int D[]) { n = N; g.resize(n); for (int i = 0; i < n - 1; i++) { g[A[i]].push_back(make_pair(B[i], D[i])); g[B[i]].push_back(make_pair(A[i], D[i])); } } ll Query(int S, int X[], int T, int Y[]) { if (n > 5000) return -1; vector<bool> imp(n, 0); for (int i = 0; i < T; i++) { imp[Y[i]] = 1; } ll ans = INF; for (int i = 0; i < S; i++) { ans = min(ans, dfs(X[i], -1, imp)); } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...