#include<bits/stdc++.h>
#define int long long
using namespace std;
vector<int> ad[5005];
int dis[5005];
signed main()
{
ios_base::sync_with_stdio(false);
cin.tie(0);
int n; cin>>n;
for(int i = 1; i <= n; i++){
int m; cin>>m;
for(int j = 1; j <= m; j++){
int p; cin>>p;
ad[p].push_back(i);
}
}
int ans = 1e18;
for(int i = 1; i <= n; i++){
queue<int> w; w.push(i);
memset(dis, 0x3f, sizeof(dis)); dis[i] = 1;
int cur = 0;
while(w.size() > 0){
int u = w.front(); w.pop(); cur += dis[u];
for(int v : ad[u]) if(dis[v] > dis[u] + 1){
dis[v] = dis[u] + 1;
w.push(v);
}
}
ans = min(ans, cur);
}
cout<<ans;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |