Submission #884278

# Submission time Handle Problem Language Result Execution time Memory
884278 2023-12-07T05:51:58 Z vjudge1 Bosses (BOI16_bosses) C++17
100 / 100
485 ms 856 KB
#include <bits/stdc++.h>
#define pb push_back
#define int long long
using namespace std;

const int N = 5e3 + 10, INF = 1e9;

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

void bfs(int v) {
    queue<int> q;
    vector<int> h(N, INF), H(N, 0);
    int res = 0, ps = 0;
    h[v] = 0;
    q.push(v);
    while (q.size()) {
        int u = q.front();
        q.pop();
        for (auto e : G[u])
            if (h[u] + 1 < h[e]) {
                h[e] = h[u] + 1;
                q.push(e);
            }
    }
    for (int i = 0; i < n; i++) {
        if (h[i] == INF) return;
        H[h[i]]++;
    }
    for (int i = n; i >= 0; i--)
        ps += H[i], res += ps;
    ans = min(ans, res);
}

signed main() {
    ios:: sync_with_stdio(0), cin.tie(0);
    cin >> n;
    for (int i = 0; i < n; i++) {
        int m, x;
        cin >> m;
        for (int j = 0; j < m; j++) {
            cin >> x;
            G[--x].pb(i);
        }
    }
    for (int i = 0; i < n; i++) bfs(i);
    cout << ans << '\n';
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 856 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 480 KB Output is correct
4 Correct 0 ms 600 KB Output is correct
5 Correct 1 ms 600 KB Output is correct
6 Correct 0 ms 604 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 856 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 480 KB Output is correct
4 Correct 0 ms 600 KB Output is correct
5 Correct 1 ms 600 KB Output is correct
6 Correct 0 ms 604 KB Output is correct
7 Correct 1 ms 600 KB Output is correct
8 Correct 1 ms 604 KB Output is correct
9 Correct 0 ms 604 KB Output is correct
10 Correct 1 ms 604 KB Output is correct
11 Correct 1 ms 604 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 856 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 480 KB Output is correct
4 Correct 0 ms 600 KB Output is correct
5 Correct 1 ms 600 KB Output is correct
6 Correct 0 ms 604 KB Output is correct
7 Correct 1 ms 600 KB Output is correct
8 Correct 1 ms 604 KB Output is correct
9 Correct 0 ms 604 KB Output is correct
10 Correct 1 ms 604 KB Output is correct
11 Correct 1 ms 604 KB Output is correct
12 Correct 4 ms 604 KB Output is correct
13 Correct 3 ms 604 KB Output is correct
14 Correct 90 ms 604 KB Output is correct
15 Correct 12 ms 600 KB Output is correct
16 Correct 459 ms 604 KB Output is correct
17 Correct 454 ms 796 KB Output is correct
18 Correct 485 ms 808 KB Output is correct