5212 2023. 04. 22 18:30:48 ZsofiaKeresztely Dinók cpp14 Elfogadva 100/100 165ms 29736 KiB
#include <bits/stdc++.h>
using namespace std;
vector<vector<int> > g;
vector<int> ind;
vector<int> op;
int n, last = 1;

void bfs(){
    queue<int> q;
    for (int i=1; i<=n; i++){
        if (!ind[i]){
            q.push(i);
        }
    }
    while (!q.empty()){
        int v = q.front();
        q.pop();
        op[v] = last;
        last++;
        for (int x : g[v]){
            ind[x]--;
            if (!ind[x]) q.push(x);
        }
    }
}

int main()
{
    int m;
    cin >> n >> m;
    g.resize(2*n+1);
    ind.assign(2*n+1, 0);
    op.assign(2*n+1, 0);
    while (m--){
        int t, a, b;
        cin >> t >> a >> b;
        if (t == 2){
            g[a + n].push_back(b);
            ind[b]++;
        }
        else{
            g[b].push_back(a + n);
            g[a].push_back(b + n);
            ind[a+n]++;
            ind[b+n]++;
        }
    }
    for (int i=1; i<=n; i++){
        g[i].push_back(i + n);
        ind[i+n]++;
    }
    bfs();
    for (int i=1; i<=2*n; i++){
        if (!op[i]){
            cout << "NEM";
            return 0;
        }
    }
    cout << "IGEN";
    for (int i=1; i<=n; i++){
        cout << "\n" << op[i] << " " << op[i + n];
    }
}
Részfeladat Összpont Teszt Verdikt Idő Memória
subtask1 0/0
1 Elfogadva 3ms 1808 KiB
2 Elfogadva 3ms 2060 KiB
3 Elfogadva 8ms 3184 KiB
subtask2 5/5
4 Elfogadva 157ms 23892 KiB
5 Elfogadva 96ms 24652 KiB
6 Elfogadva 74ms 25080 KiB
subtask3 15/15
7 Elfogadva 3ms 5728 KiB
8 Elfogadva 3ms 5624 KiB
9 Elfogadva 2ms 5716 KiB
10 Elfogadva 2ms 5744 KiB
11 Elfogadva 3ms 5720 KiB
12 Elfogadva 3ms 5704 KiB
subtask4 10/10
13 Elfogadva 3ms 5792 KiB
14 Elfogadva 3ms 5924 KiB
15 Elfogadva 3ms 6164 KiB
16 Elfogadva 3ms 6260 KiB
17 Elfogadva 2ms 6376 KiB
subtask5 35/35
18 Elfogadva 3ms 6300 KiB
19 Elfogadva 3ms 6444 KiB
20 Elfogadva 148ms 29536 KiB
21 Elfogadva 145ms 29620 KiB
22 Elfogadva 3ms 6600 KiB
23 Elfogadva 3ms 6676 KiB
24 Elfogadva 122ms 29736 KiB
subtask6 35/35
25 Elfogadva 152ms 27604 KiB
26 Elfogadva 150ms 27612 KiB
27 Elfogadva 164ms 27696 KiB
28 Elfogadva 164ms 27700 KiB
29 Elfogadva 133ms 28520 KiB
30 Elfogadva 157ms 28280 KiB
31 Elfogadva 165ms 27996 KiB
32 Elfogadva 134ms 28408 KiB
33 Elfogadva 129ms 29580 KiB
34 Elfogadva 158ms 28244 KiB
35 Elfogadva 128ms 27340 KiB