#include <bits/stdc++.h>
using namespace std;
const int DIM = 100005;
deque<int> que;
vector<int> lef[DIM], rig[DIM];
bool oki[DIM];
int cnt[DIM], tot[DIM];
int main(void) {
#ifdef HOME
freopen("alkemija.in", "r", stdin);
freopen("alkemija.out", "w", stdout);
#endif
int n, m;
cin >> n >> m;
for (int i = 1; i <= m; ++i) {
int x;
cin >> x;
oki[x] = true;
}
int k;
cin >> k;
for (int i = 1; i <= k; ++i) {
int l, r;
cin >> l >> r;
tot[i] = l;
for (int j = 1; j <= l; ++j) {
int x;
cin >> x;
lef[x].push_back(i);
if (oki[x] and ++cnt[i] == tot[i])
que.push_back(i);
}
for (int j = 1; j <= r; ++j) {
int x;
cin >> x;
rig[i].push_back(x);
}
}
for (; que.size(); que.pop_front()) {
int x = que.front();
for (int y : rig[x]) {
if (oki[y])
continue;
oki[y] = true;
for (int z : lef[y])
if (++cnt[z] == tot[z])
que.push_back(z);
}
}
int nr = 0;
for (int i = 1; i <= n; ++i)
nr += oki[i];
cout << nr << endl;
for (int i = 1; i <= n; ++i)
if (oki[i])
cout << i << " ";
return 0;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
6 ms |
4984 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
6 ms |
4984 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
6 ms |
5112 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
5112 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
5112 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4984 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
53 ms |
6548 KB |
Output is correct |
2 |
Correct |
73 ms |
7288 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
133 ms |
8848 KB |
Output is correct |
2 |
Correct |
145 ms |
9336 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
179 ms |
10360 KB |
Output is correct |
2 |
Correct |
158 ms |
9560 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
197 ms |
10980 KB |
Output is correct |
2 |
Correct |
179 ms |
10364 KB |
Output is correct |