# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
41138 | 2018-02-13T05:18:19 Z | ssnsarang2023 | Bosses (BOI16_bosses) | C++14 | 1500 ms | 1628 KB |
#include <cstdio> #include <vector> #include <queue> using namespace std; typedef long long ll; typedef unsigned long long ull; #define SZ(x) ((int)x.size()) const int N = 5e3+5; int n, sz[N]; bool vis[N]; vector<int> g[N], g2[N]; void dfs(int u, int &total) { sz[u] = 1; for (int v : g2[u]) { dfs(v, total); sz[u] += sz[v]; } total += sz[u]; } int make_tree(int root) { for (int i = 1; i <= n; ++i) vis[i] = false, g2[i].clear(); queue<int> q; q.push(root); vis[root] = 1; int cnt = 1; while (SZ(q)) { int u = q.front(); q.pop(); for (int v : g[u]) { if (vis[v]) continue; ++cnt, vis[v] = true; q.push(v); g2[u].push_back(v); } } if (cnt < n) return (int)1e9+7; int sum = 0; dfs(root, sum); return sum; } int main() { scanf("%d", &n); for (int i = 1; i <= n; ++i) { int m; scanf("%d", &m); for (int j = 1, v; j <= m; ++j) { scanf("%d", &v); g[v].push_back(i); } } int res = (int)1e9+7; for (int i = 1; i <= n; ++i) res = min(res, make_tree(i)); printf("%d", res); return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 504 KB | Output is correct |
2 | Correct | 1 ms | 608 KB | Output is correct |
3 | Correct | 2 ms | 676 KB | Output is correct |
4 | Correct | 2 ms | 840 KB | Output is correct |
5 | Correct | 2 ms | 840 KB | Output is correct |
6 | Correct | 2 ms | 840 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 504 KB | Output is correct |
2 | Correct | 1 ms | 608 KB | Output is correct |
3 | Correct | 2 ms | 676 KB | Output is correct |
4 | Correct | 2 ms | 840 KB | Output is correct |
5 | Correct | 2 ms | 840 KB | Output is correct |
6 | Correct | 2 ms | 840 KB | Output is correct |
7 | Correct | 2 ms | 896 KB | Output is correct |
8 | Correct | 2 ms | 896 KB | Output is correct |
9 | Correct | 2 ms | 896 KB | Output is correct |
10 | Correct | 2 ms | 940 KB | Output is correct |
11 | Correct | 2 ms | 940 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 504 KB | Output is correct |
2 | Correct | 1 ms | 608 KB | Output is correct |
3 | Correct | 2 ms | 676 KB | Output is correct |
4 | Correct | 2 ms | 840 KB | Output is correct |
5 | Correct | 2 ms | 840 KB | Output is correct |
6 | Correct | 2 ms | 840 KB | Output is correct |
7 | Correct | 2 ms | 896 KB | Output is correct |
8 | Correct | 2 ms | 896 KB | Output is correct |
9 | Correct | 2 ms | 896 KB | Output is correct |
10 | Correct | 2 ms | 940 KB | Output is correct |
11 | Correct | 2 ms | 940 KB | Output is correct |
12 | Correct | 7 ms | 1120 KB | Output is correct |
13 | Correct | 7 ms | 1248 KB | Output is correct |
14 | Correct | 228 ms | 1396 KB | Output is correct |
15 | Correct | 46 ms | 1396 KB | Output is correct |
16 | Correct | 805 ms | 1484 KB | Output is correct |
17 | Execution timed out | 1530 ms | 1628 KB | Time limit exceeded |
18 | Halted | 0 ms | 0 KB | - |