Submission #657175

# Submission time Handle Problem Language Result Execution time Memory
657175 2022-11-09T03:31:39 Z quocnguyen1012 Bosses (BOI16_bosses) C++14
100 / 100
626 ms 664 KB
#include "bits/stdc++.h"

using namespace std;

int main() {
  ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
  if (fopen("input.txt", "r")) freopen("input.txt", "r", stdin);
  int n; cin >> n;
  vector<vector<int>> adj(n + 5);
  for (int i = 1; i <= n; ++i) {
    int k; cin >> k;
    while (k--) {
      int v; cin >> v;
     // adj[i].emplace_back(v);
      adj[v].emplace_back(i);
    }
  }
  vector<int> d(n + 5, -1);
  int ans = INT_MAX;
  for (int r = 1; r <= n; ++r) {
    queue<int> Q;
    fill(d.begin(), d.end(), -1);
    int tot = 0;
    for (d[r] = 1, Q.push(r); !Q.empty(); ) {
      int u = Q.front(); Q.pop();
      for (int v : adj[u]) {
        if (d[v] == -1) {
          d[v] = d[u] + 1;
          Q.push(v);
        }
      }
    }
    bool bad = false;
    for (int i = 1; i <= n; ++i) {
      tot += d[i];
      if (d[i] == -1) bad = true;
    }
    if (not bad)
      ans = min(ans, tot);
  }
  cout << ans;
}

Compilation message

bosses.cpp: In function 'int main()':
bosses.cpp:7:39: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    7 |   if (fopen("input.txt", "r")) freopen("input.txt", "r", stdin);
      |                                ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 320 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 320 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 1 ms 320 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 324 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 320 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 1 ms 320 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 324 KB Output is correct
12 Correct 5 ms 468 KB Output is correct
13 Correct 3 ms 332 KB Output is correct
14 Correct 126 ms 552 KB Output is correct
15 Correct 23 ms 468 KB Output is correct
16 Correct 487 ms 644 KB Output is correct
17 Correct 626 ms 664 KB Output is correct
18 Correct 622 ms 660 KB Output is correct