| 26039 | 2026-03-13 18:18:02 | xxx | Csillagok bábeli tornya | cpp17 | Accepted 100/100 | 389ms | 39764 KiB |
#include <bits/stdc++.h>
using namespace std;
vector<int> a;
vector<vector<int> > adj, adj2, scc, b;
vector<bool> vis;
vector<int> topOrd;
int cnt = 0;
void dfs(int v) {
vis[v] = 1;
for(int u : adj[v]) {
if(!vis[u]) {
dfs(u);
}
}
topOrd.push_back(v);
}
void dfs2(int v) {
vis[v] = 1;
scc[cnt].push_back(v);
for(int u : adj2[v]) {
if(!vis[u]) {
dfs2(u);
}
}
}
int main() {
int n, m;
cin >> n >> m;
a.assign(n+1, 0);
adj.resize(n+m+1);
adj2.resize(n+m+1);
b.resize(n+m+1);
vis.assign(n+m+1, 0);
for(int i = 1; i <= n; i++) {
cin >> a[i];
adj[i].push_back(n+a[i]);
adj[n+a[i]].push_back(i);
adj2[i].push_back(n+a[i]);
adj2[n+a[i]].push_back(i);
}
for(int i = 1; i <= n; i++) {
int x;
cin >> x;
for(int j = 1; j <= x; j++) {
int y;
cin >> y;
adj[n+y].push_back(i);
adj2[i].push_back(n+y);
}
}
for(int i = 1; i <= n+m; i++) {
if (!vis[i]) {
dfs(i);
}
}
reverse(topOrd.begin(), topOrd.end());
/*for(int &x : topOrd) {
cout << x << ' ';
}*/
//cout << endl;
vis.assign(n+m+1, 0);
for(int x : topOrd) {
if (!vis[x]) {
scc.push_back({});
dfs2(x);
cnt++;
}
}
int mx = 0, ind;
for(int i = 0; i < cnt; i++) {
//cout << i << endl;
for(int &x : scc[i]) {
if (x <= n) {
b[i].push_back(x);
//cout << x << ' ' << b[i].size() << endl;
}
}
if (mx < b[i].size()) {
mx = b[i].size();
ind = i;
}
//out << endl;
}
cout << mx << endl;
for(int &x : b[ind]) {
cout << x << ' ';
}
}
| Subtask | Sum | Test | Verdict | Time | Memory | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Accepted | 1ms | 316 KiB | ||||
| 2 | Accepted | 21ms | 3884 KiB | ||||
| subtask2 | 10/10 | ||||||
| 3 | Accepted | 1ms | 316 KiB | ||||
| 4 | Accepted | 1ms | 316 KiB | ||||
| 5 | Accepted | 1ms | 336 KiB | ||||
| 6 | Accepted | 1ms | 316 KiB | ||||
| 7 | Accepted | 1ms | 332 KiB | ||||
| 8 | Accepted | 2ms | 512 KiB | ||||
| 9 | Accepted | 1ms | 316 KiB | ||||
| 10 | Accepted | 1ms | 332 KiB | ||||
| 11 | Accepted | 1ms | 332 KiB | ||||
| 12 | Accepted | 3ms | 316 KiB | ||||
| subtask3 | 15/15 | ||||||
| 13 | Accepted | 1ms | 316 KiB | ||||
| 14 | Accepted | 1ms | 512 KiB | ||||
| 15 | Accepted | 1ms | 508 KiB | ||||
| 16 | Accepted | 1ms | 316 KiB | ||||
| 17 | Accepted | 67ms | 10076 KiB | ||||
| 18 | Accepted | 41ms | 8552 KiB | ||||
| 19 | Accepted | 81ms | 16672 KiB | ||||
| 20 | Accepted | 75ms | 16576 KiB | ||||
| 21 | Accepted | 75ms | 16488 KiB | ||||
| 22 | Accepted | 93ms | 16508 KiB | ||||
| 23 | Accepted | 89ms | 16348 KiB | ||||
| 24 | Accepted | 103ms | 16196 KiB | ||||
| 25 | Accepted | 250ms | 33292 KiB | ||||
| subtask4 | 10/10 | ||||||
| 26 | Accepted | 1ms | 316 KiB | ||||
| 27 | Accepted | 1ms | 316 KiB | ||||
| 28 | Accepted | 1ms | 316 KiB | ||||
| 29 | Accepted | 1ms | 316 KiB | ||||
| 30 | Accepted | 1ms | 508 KiB | ||||
| 31 | Accepted | 1ms | 316 KiB | ||||
| 32 | Accepted | 187ms | 18528 KiB | ||||
| 33 | Accepted | 317ms | 39764 KiB | ||||
| 34 | Accepted | 389ms | 31396 KiB | ||||
| 35 | Accepted | 307ms | 39188 KiB | ||||
| subtask5 | 25/25 | ||||||
| 36 | Accepted | 1ms | 316 KiB | ||||
| 37 | Accepted | 1ms | 316 KiB | ||||
| 38 | Accepted | 1ms | 336 KiB | ||||
| 39 | Accepted | 1ms | 316 KiB | ||||
| 40 | Accepted | 1ms | 332 KiB | ||||
| 41 | Accepted | 2ms | 512 KiB | ||||
| 42 | Accepted | 1ms | 316 KiB | ||||
| 43 | Accepted | 1ms | 332 KiB | ||||
| 44 | Accepted | 1ms | 332 KiB | ||||
| 45 | Accepted | 3ms | 316 KiB | ||||
| 46 | Accepted | 1ms | 316 KiB | ||||
| 47 | Accepted | 4ms | 620 KiB | ||||
| 48 | Accepted | 29ms | 1704 KiB | ||||
| 49 | Accepted | 48ms | 2684 KiB | ||||
| 50 | Accepted | 2ms | 564 KiB | ||||
| 51 | Accepted | 2ms | 564 KiB | ||||
| 52 | Accepted | 2ms | 584 KiB | ||||
| 53 | Accepted | 2ms | 564 KiB | ||||
| 54 | Accepted | 3ms | 580 KiB | ||||
| 55 | Accepted | 3ms | 756 KiB | ||||
| 56 | Accepted | 4ms | 564 KiB | ||||
| 57 | Accepted | 8ms | 740 KiB | ||||
| 58 | Accepted | 8ms | 836 KiB | ||||
| 59 | Accepted | 52ms | 2580 KiB | ||||
| subtask6 | 40/40 | ||||||
| 60 | Accepted | 1ms | 508 KiB | ||||
| 61 | Accepted | 21ms | 3736 KiB | ||||
| 62 | Accepted | 1ms | 316 KiB | ||||
| 63 | Accepted | 1ms | 316 KiB | ||||
| 64 | Accepted | 1ms | 336 KiB | ||||
| 65 | Accepted | 1ms | 316 KiB | ||||
| 66 | Accepted | 1ms | 332 KiB | ||||
| 67 | Accepted | 2ms | 512 KiB | ||||
| 68 | Accepted | 1ms | 316 KiB | ||||
| 69 | Accepted | 1ms | 332 KiB | ||||
| 70 | Accepted | 1ms | 332 KiB | ||||
| 71 | Accepted | 3ms | 316 KiB | ||||
| 72 | Accepted | 1ms | 316 KiB | ||||
| 73 | Accepted | 1ms | 512 KiB | ||||
| 74 | Accepted | 1ms | 508 KiB | ||||
| 75 | Accepted | 1ms | 316 KiB | ||||
| 76 | Accepted | 67ms | 10076 KiB | ||||
| 77 | Accepted | 41ms | 8552 KiB | ||||
| 78 | Accepted | 81ms | 16672 KiB | ||||
| 79 | Accepted | 75ms | 16576 KiB | ||||
| 80 | Accepted | 75ms | 16488 KiB | ||||
| 81 | Accepted | 93ms | 16508 KiB | ||||
| 82 | Accepted | 89ms | 16348 KiB | ||||
| 83 | Accepted | 103ms | 16196 KiB | ||||
| 84 | Accepted | 250ms | 33292 KiB | ||||
| 85 | Accepted | 1ms | 316 KiB | ||||
| 86 | Accepted | 1ms | 316 KiB | ||||
| 87 | Accepted | 1ms | 316 KiB | ||||
| 88 | Accepted | 1ms | 316 KiB | ||||
| 89 | Accepted | 1ms | 508 KiB | ||||
| 90 | Accepted | 1ms | 316 KiB | ||||
| 91 | Accepted | 187ms | 18528 KiB | ||||
| 92 | Accepted | 317ms | 39764 KiB | ||||
| 93 | Accepted | 389ms | 31396 KiB | ||||
| 94 | Accepted | 307ms | 39188 KiB | ||||
| 95 | Accepted | 1ms | 316 KiB | ||||
| 96 | Accepted | 4ms | 620 KiB | ||||
| 97 | Accepted | 29ms | 1704 KiB | ||||
| 98 | Accepted | 48ms | 2684 KiB | ||||
| 99 | Accepted | 2ms | 564 KiB | ||||
| 100 | Accepted | 2ms | 564 KiB | ||||
| 101 | Accepted | 2ms | 584 KiB | ||||
| 102 | Accepted | 2ms | 564 KiB | ||||
| 103 | Accepted | 3ms | 580 KiB | ||||
| 104 | Accepted | 3ms | 756 KiB | ||||
| 105 | Accepted | 4ms | 564 KiB | ||||
| 106 | Accepted | 8ms | 740 KiB | ||||
| 107 | Accepted | 8ms | 836 KiB | ||||
| 108 | Accepted | 52ms | 2580 KiB | ||||
| 109 | Accepted | 52ms | 2984 KiB | ||||
| 110 | Accepted | 119ms | 10544 KiB | ||||
| 111 | Accepted | 330ms | 25816 KiB | ||||
| 112 | Accepted | 86ms | 16856 KiB | ||||
| 113 | Accepted | 43ms | 8512 KiB | ||||
| 114 | Accepted | 74ms | 16580 KiB | ||||
| 115 | Accepted | 75ms | 16356 KiB | ||||
| 116 | Accepted | 97ms | 16416 KiB | ||||
| 117 | Accepted | 97ms | 16084 KiB | ||||
| 118 | Accepted | 10ms | 1928 KiB | ||||
| 119 | Accepted | 50ms | 3864 KiB | ||||
| 120 | Accepted | 210ms | 24732 KiB | ||||
| 121 | Accepted | 79ms | 16780 KiB | ||||
| 122 | Accepted | 83ms | 16716 KiB | ||||
| 123 | Accepted | 280ms | 36424 KiB | ||||
| 124 | Accepted | 266ms | 33596 KiB | ||||
| 125 | Accepted | 354ms | 35392 KiB | ||||