13114 | 2025-01-06 16:48:17 | RRoli | Kritikus munkák | cpp17 | Wrong answer 0/100 | 225ms | 10184 KiB |
#include <bits/stdc++.h>
using namespace std;
int main() {
int n, m;
cin >> n >> m;
vector<int> be(n+1, 0);
vector<vector<int>> ki(n+1, vector<int>(0));
for(int i = 0; i < m; i++) {
int e, u;
cin >> e >> u;
be[u]++;
ki[e].push_back(u);
}
vector<int> k, sor;
set<int> group;
int e = 0;
for(int i = 1; i <= n; i++) {
if(be[i] == 0) {
sor.push_back(i);
group.insert(i);
}
}
while(e <= n) {
group.erase(sor[e]);
if(group.size() == 0) {
k.push_back(sor[e]);
}
for(auto i : ki[sor[e]]) {
be[i]--;
group.insert(i);
if(be[i] == 0 && i != 0) {
sor.push_back(i);
}
}
e++;
}
vector<int> vegso;
for(auto i : k)
if(i != 0)
vegso.push_back(i);
cout << vegso.size() << '\n';
for(auto i : vegso) cout << i << ' ';
return 0;
}
Subtask | Sum | Test | Verdict | Time | Memory | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Accepted | 1ms | 336 KiB | ||||
2 | Wrong answer | 150ms | 7100 KiB | ||||
subtask2 | 0/25 | ||||||
3 | Wrong answer | 1ms | 316 KiB | ||||
4 | Wrong answer | 1ms | 508 KiB | ||||
5 | Wrong answer | 3ms | 316 KiB | ||||
6 | Wrong answer | 1ms | 316 KiB | ||||
7 | Wrong answer | 4ms | 544 KiB | ||||
subtask3 | 0/25 | ||||||
8 | Wrong answer | 37ms | 1588 KiB | ||||
9 | Wrong answer | 14ms | 948 KiB | ||||
10 | Wrong answer | 16ms | 820 KiB | ||||
11 | Wrong answer | 26ms | 1092 KiB | ||||
12 | Wrong answer | 26ms | 1076 KiB | ||||
subtask4 | 0/25 | ||||||
13 | Wrong answer | 120ms | 5552 KiB | ||||
14 | Wrong answer | 103ms | 5172 KiB | ||||
15 | Wrong answer | 100ms | 5172 KiB | ||||
16 | Wrong answer | 93ms | 5040 KiB | ||||
17 | Wrong answer | 92ms | 5036 KiB | ||||
subtask5 | 0/25 | ||||||
18 | Wrong answer | 225ms | 10160 KiB | ||||
19 | Wrong answer | 215ms | 10184 KiB | ||||
20 | Wrong answer | 212ms | 9932 KiB | ||||
21 | Wrong answer | 207ms | 9904 KiB | ||||
22 | Wrong answer | 182ms | 9628 KiB |