Submission #1314517

#TimeUsernameProblemLanguageResultExecution timeMemory
1314517husseinjuandaBosses (BOI16_bosses)C++20
0 / 100
1594 ms332 KiB
#include <bits/stdc++.h>
using namespace std;
#define int long long

signed main(){
    ios_base::sync_with_stdio(0); 
    cin.tie(0); 
    int n; cin >> n;
    vector<vector<int>> g(n+1);
    for(int i = 1; i <= n; i++){
        int k; cin >> k;
        for(int y = 0; y < k; y++){
            int a; cin >> a;
            g[a].push_back(i);
        }
    }
    int mn = 1e18;
    for(int i = 1; i <= n; i++){
        queue<pair<int, int>> q;
        vector<bool> d(n+1);
        q.push({i, 1});
        int ns = 0;
        int co = 0;
        while(q.size() > 0){
            co++;
            auto [k, time] = q.front();
            if(d[k]) continue;
            d[k] = true;
            q.pop();
            ns += time;
            for(int i = 0; i < g[k].size(); i++){
                if(d[g[k][i]]) continue;
                q.push({g[k][i], time+1});
            }
        }
        if(co != n) continue;
        mn = min(mn, ns);
    }
    cout << mn << "\n";
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...