Submission #97087

# Submission time Handle Problem Language Result Execution time Memory
97087 2019-02-13T19:06:16 Z dalgerok Bosses (BOI16_bosses) C++14
100 / 100
597 ms 760 KB
#include<bits/stdc++.h>
using namespace std;


const int N = 5005, INF = 1e9;



int n, d[N];
int ans = INF;
vector < int > g[N];

inline void bfs(int rt){
    for(int i = 1; i <= n; i++){
        d[i] = INF;
    }
    d[rt] = 1;
    queue < int > q;
    q.push(rt);
    while(!q.empty()){
        int v = q.front();
        q.pop();
        for(int to : g[v]){
            if(d[to] > d[v] + 1){
                d[to] = d[v] + 1;
                q.push(to);
            }
        }
    }
    int sum = 0;
    for(int i = 1; i <= n; i++){
        if(d[i] == INF){
            return;
        }
        sum += d[i];
    }
    //cout << rt << " " << sum << "\n";
    ans = min(ans, sum);
}

int main(){
    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    cin >> n;
    for(int i = 1; i <= n; i++){
        int x, y;
        cin >> x;
        for(int j = 1; j <= x; j++){
            cin >> y;
            g[y].push_back(i);
        }
    }
    for(int i = 1; i <= n; i++){
        bfs(i);
    }
    cout << ans;
}
# Verdict Execution time Memory Grader output
1 Correct 3 ms 640 KB Output is correct
2 Correct 3 ms 384 KB Output is correct
3 Correct 3 ms 384 KB Output is correct
4 Correct 3 ms 512 KB Output is correct
5 Correct 3 ms 512 KB Output is correct
6 Correct 3 ms 512 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3 ms 640 KB Output is correct
2 Correct 3 ms 384 KB Output is correct
3 Correct 3 ms 384 KB Output is correct
4 Correct 3 ms 512 KB Output is correct
5 Correct 3 ms 512 KB Output is correct
6 Correct 3 ms 512 KB Output is correct
7 Correct 3 ms 512 KB Output is correct
8 Correct 3 ms 508 KB Output is correct
9 Correct 2 ms 512 KB Output is correct
10 Correct 4 ms 548 KB Output is correct
11 Correct 3 ms 512 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3 ms 640 KB Output is correct
2 Correct 3 ms 384 KB Output is correct
3 Correct 3 ms 384 KB Output is correct
4 Correct 3 ms 512 KB Output is correct
5 Correct 3 ms 512 KB Output is correct
6 Correct 3 ms 512 KB Output is correct
7 Correct 3 ms 512 KB Output is correct
8 Correct 3 ms 508 KB Output is correct
9 Correct 2 ms 512 KB Output is correct
10 Correct 4 ms 548 KB Output is correct
11 Correct 3 ms 512 KB Output is correct
12 Correct 8 ms 640 KB Output is correct
13 Correct 7 ms 640 KB Output is correct
14 Correct 125 ms 644 KB Output is correct
15 Correct 15 ms 640 KB Output is correct
16 Correct 532 ms 760 KB Output is correct
17 Correct 543 ms 760 KB Output is correct
18 Correct 597 ms 736 KB Output is correct