#include <bits/stdc++.h>
using ll = long long;
using namespace std;
vector<vector<int>> g;
vector<bool> vis;
vector<int> ans;
void dfs(int cur) {
vis[cur] = true;
for (int i : g[cur]) {
if (!vis[i]) {
dfs(i);
}
}
ans.push_back(cur);
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
int n, m; cin >> n >> m;
vector<array<int, 3>> v(m);
for (int i = 0; i < m; i++) {
cin >> v[i][0] >> v[i][1] >> v[i][2];
}
g.resize(2*n);
for (int i = 0; i < 2*n; i+=2) {
g[i].push_back(i+1); // i mod 2 == 0 elemek a keletkezések
}
for (auto& [x, a, b] : v) {
if (x == 2) {
g[(a-1)*2+1].push_back((b-1)*2); // a vege -> b eleje
} else {
// egyszerre eltek
g[(a-1)*2].push_back((b-1)*2+1);
g[(b-1)*2].push_back((a-1)*2+1);
}
}
vis.resize(2*n, false);
for (int i = 0; i < 2*n; i++) {
if (!vis[i]) dfs(i);
}
reverse(ans.begin(), ans.end());
// validacio
vector<int> time(2*n);
for (int i = 0; i < ans.size(); i++) {
time[ans[i]] = i+1;
}
for (int i = 0; i < 2*n; i++) {
for (int j : g[i]) {
if (time[i] >= time[j]) {
cout << "NEM\n"; return 0;
}
}
}
cout << "IGEN\n";
for (int i = 0; i < 2*n; i+=2) {
cout << time[i] << " " << time[i+1] << "\n";
}
return 0;
}| Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Elfogadva | 1ms | 316 KiB | ||||
| 2 | Elfogadva | 1ms | 508 KiB | ||||
| 3 | Elfogadva | 4ms | 820 KiB | ||||
| subtask2 | 5/5 | ||||||
| 4 | Elfogadva | 103ms | 13000 KiB | ||||
| 5 | Elfogadva | 63ms | 11944 KiB | ||||
| 6 | Elfogadva | 56ms | 11496 KiB | ||||
| subtask3 | 15/15 | ||||||
| 7 | Elfogadva | 3ms | 316 KiB | ||||
| 8 | Elfogadva | 3ms | 500 KiB | ||||
| 9 | Elfogadva | 3ms | 316 KiB | ||||
| 10 | Elfogadva | 3ms | 316 KiB | ||||
| 11 | Elfogadva | 1ms | 316 KiB | ||||
| 12 | Elfogadva | 1ms | 316 KiB | ||||
| subtask4 | 10/10 | ||||||
| 13 | Elfogadva | 1ms | 508 KiB | ||||
| 14 | Elfogadva | 1ms | 316 KiB | ||||
| 15 | Elfogadva | 1ms | 316 KiB | ||||
| 16 | Elfogadva | 1ms | 508 KiB | ||||
| 17 | Elfogadva | 1ms | 316 KiB | ||||
| subtask5 | 35/35 | ||||||
| 18 | Elfogadva | 1ms | 316 KiB | ||||
| 19 | Elfogadva | 1ms | 316 KiB | ||||
| 20 | Elfogadva | 104ms | 14272 KiB | ||||
| 21 | Elfogadva | 103ms | 14272 KiB | ||||
| 22 | Elfogadva | 1ms | 316 KiB | ||||
| 23 | Elfogadva | 1ms | 316 KiB | ||||
| 24 | Elfogadva | 63ms | 12988 KiB | ||||
| subtask6 | 35/35 | ||||||
| 25 | Elfogadva | 115ms | 13224 KiB | ||||
| 26 | Elfogadva | 98ms | 13248 KiB | ||||
| 27 | Elfogadva | 98ms | 13228 KiB | ||||
| 28 | Elfogadva | 115ms | 13232 KiB | ||||
| 29 | Elfogadva | 98ms | 12208 KiB | ||||
| 30 | Elfogadva | 119ms | 13320 KiB | ||||
| 31 | Elfogadva | 97ms | 13244 KiB | ||||
| 32 | Elfogadva | 81ms | 12220 KiB | ||||
| 33 | Elfogadva | 71ms | 12968 KiB | ||||
| 34 | Elfogadva | 103ms | 13244 KiB | ||||
| 35 | Elfogadva | 68ms | 11688 KiB | ||||