Submission #1278134

#TimeUsernameProblemLanguageResultExecution timeMemory
1278134hoangtien69Bosses (BOI16_bosses)C++20
100 / 100
360 ms728 KiB
#include<bits/stdc++.h> using namespace std; const int MAXN = 5005; int n; vector<int> adj[MAXN]; int d[MAXN]; int res = INT_MAX; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n; for (int i = 1; i <= n; i++) { int k; cin >> k; while(k--) { int x; cin >> x; adj[x].push_back(i); } } for (int i = 1; i <= n; i++) { memset(d, 0, sizeof d); queue<int> q; q.push(i); d[i] = 1; int cur = 0; int dem = 0; while(!q.empty()) { int u = q.front(); q.pop(); cur += d[u]; dem++; for (int v : adj[u]) { if (d[v] == 0) { d[v] = d[u] + 1; q.push(v); } } } if (dem < n) { continue; } res = min(res, cur); } cout << res; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...