이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
#define endl '\n'
using namespace std;
const int32_t MAX_N = 1e5;
const int32_t MAX_K = 1e5;
bool have[MAX_N + 5];
int32_t cnt[MAX_K + 5];
vector< int32_t > operationsWith[MAX_N + 5], operations[MAX_K + 5];
int main() {
	ios_base::sync_with_stdio(false);
	cin.tie(nullptr);
	int32_t n, m;
	cin >> n >> m;
	for(int32_t i = 0; i < m; i++) {
		int32_t x;
		cin >> x;
		have[x] = true;
	}
	int32_t k;
	cin >> k;
	
	queue< int32_t > ready;
	for(int32_t i = 0; i < k; i++) {
		int32_t l, r;
		cin >> l >> r;
			
		for(int32_t j = 0; j < l; j++) {
			int32_t x;
			cin >> x;
			operationsWith[x].push_back(i);
			if(!have[x]) {
				cnt[i]++;
			}
		}
		for(int32_t j = 0; j < r; j++) {
			int32_t x;
			cin >> x;
			operations[i].push_back(x);
		}
		if(cnt[i] == 0) {
			ready.push(i);
		}
	}
	while(!ready.empty()) {
		int32_t curr = ready.front();
		ready.pop();
		for(auto &i : operations[curr]) {
			if(!have[i]) {
				for(auto &j : operationsWith[i]) {
					cnt[j]--;
					if(cnt[j] == 0) {
						ready.push(j);
					}
				}
				have[i] = true;
			}
		}
	}
	int32_t ans = 0;
	for(int32_t i = 1; i <= n; i++) {
		if(have[i]) {
			ans++;
		}
	}
	cout << ans << endl;
	for(int32_t i = 1; i <= n; i++) {
		if(have[i]) {
			cout << i << " ";
		}
	}
	cout << endl;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |