| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1352820 | luvwinter | Bosses (BOI16_bosses) | C++17 | 1 ms | 344 KiB |
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define pii pair<int , int>
#define fi first
#define se second
#define FOR(i , l , r) for(int i = (l) ; i <= (r) ; i++)
#define FOD(i , r , l) for(int i = (r) ; i >= (l) ; i--)
const int N = 5005;
const int INF = 1e18;
vector<int> adj[N];
int n;
int res = INF;
void bfs(int s) {
vector<int> dist(n + 1 , INF);
vector<int> check(n + 1 , false);
dist[s] = 1;
check[s] = 1;
queue<int> q;
q.push(s);
while(q.size()) {
int u = q.front();
q.pop();
if(check[u]) continue;
check[u] = 1;
for(auto v : adj[u]) {
if(dist[v] > dist[u] + 1) {
dist[v] = dist[u] + 1;
q.push(v);
}
}
}
int ans = 0;
for(int i = 1 ; i <= n ; i++) {
ans += dist[i];
}
res = min(res , ans);
}
void solve () {
cin >> n;
FOR(i , 1 , n) {
int k; cin >> k;
FOR(j , 1 , k) {
int u; cin >> u;
adj[u].push_back(i);
}
}
FOR(i , 1 , n) {
bfs(i);
}
cout << res;
}
main() {
ios_base :: sync_with_stdio(false);
cin.tie(NULL);
solve();
return 0;
}
Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
