251172026-02-18 00:59:07999Bizonyításcpp17Időlimit túllépés 25/501.087s4408 KiB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;
#define int long long
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")


vector<vector<int>> v;
int b[501][501];
vector<int> vis;

bool dfs(int x, int y){
    vis[y]=1;
    if(b[x][y])return 1;
    bool temp=false;
    for(int i : v[y]){
        if(vis[i])continue;
        temp|=dfs(x, i);
    }
    b[x][y]=temp;
    return temp;
}

signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int n,q;cin>>n>>q;
    v.resize(n);
    vis.resize(n);
    for(int i = 0;i<n;i++)b[i][i]=1;
    while(q--){
        int t;cin>>t;
        if(t==1){
            int x,y;
            cin>>x>>y;
            v[--y].push_back(--x);
            b[x][y]=1;
        }
        else{
            for(int &i : vis)i=0;
            int x,y;cin>>x>>y;
            x--;y--;
            cout<<(dfs(x,y)?"IGEN":"NEM")<<'\n';
            /*for(vector<int> i : b){
                for(int j : i){
                    cerr<<j<<' ';
                }cerr<<endl;
            }cerr<<endl<<endl<<"///////////////////"<<endl<<endl;*/
        }
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Elfogadva101ms4408 KiB
subtask210/10
3Elfogadva2ms564 KiB
4Elfogadva4ms1268 KiB
5Elfogadva18ms2612 KiB
6Elfogadva14ms2356 KiB
7Elfogadva17ms2100 KiB
8Elfogadva2ms1332 KiB
9Elfogadva1ms564 KiB
10Elfogadva6ms1076 KiB
11Elfogadva14ms2012 KiB
12Elfogadva14ms2512 KiB
subtask315/15
13Elfogadva1ms316 KiB
14Elfogadva1ms592 KiB
15Elfogadva1ms316 KiB
16Elfogadva1ms508 KiB
17Elfogadva1ms316 KiB
18Elfogadva1ms564 KiB
19Elfogadva1ms564 KiB
20Elfogadva1ms508 KiB
21Elfogadva1ms316 KiB
22Elfogadva1ms564 KiB
23Elfogadva1ms564 KiB
24Elfogadva1ms508 KiB
25Elfogadva2ms564 KiB
26Elfogadva2ms564 KiB
27Elfogadva2ms508 KiB
28Elfogadva2ms564 KiB
29Elfogadva1ms316 KiB
30Elfogadva1ms316 KiB
31Elfogadva1ms316 KiB
32Elfogadva1ms316 KiB
33Elfogadva1ms316 KiB
34Elfogadva1ms316 KiB
35Elfogadva1ms500 KiB
36Elfogadva1ms564 KiB
37Elfogadva1ms316 KiB
38Elfogadva1ms316 KiB
subtask40/25
39Elfogadva1ms316 KiB
40Elfogadva101ms4264 KiB
41Elfogadva2ms564 KiB
42Elfogadva4ms1268 KiB
43Elfogadva18ms2612 KiB
44Elfogadva14ms2356 KiB
45Elfogadva17ms2100 KiB
46Elfogadva2ms1332 KiB
47Elfogadva1ms564 KiB
48Elfogadva6ms1076 KiB
49Elfogadva14ms2012 KiB
50Elfogadva14ms2512 KiB
51Elfogadva1ms592 KiB
52Elfogadva1ms316 KiB
53Elfogadva1ms508 KiB
54Elfogadva1ms316 KiB
55Elfogadva1ms564 KiB
56Elfogadva1ms564 KiB
57Elfogadva1ms508 KiB
58Elfogadva1ms316 KiB
59Elfogadva1ms564 KiB
60Elfogadva1ms564 KiB
61Elfogadva1ms508 KiB
62Elfogadva2ms564 KiB
63Elfogadva2ms564 KiB
64Elfogadva2ms508 KiB
65Elfogadva2ms564 KiB
66Elfogadva1ms316 KiB
67Elfogadva1ms316 KiB
68Elfogadva1ms316 KiB
69Elfogadva1ms316 KiB
70Elfogadva1ms316 KiB
71Elfogadva1ms316 KiB
72Elfogadva1ms500 KiB
73Elfogadva1ms564 KiB
74Elfogadva1ms316 KiB
75Elfogadva1ms316 KiB
76Elfogadva27ms1076 KiB
77Elfogadva17ms1844 KiB
78Elfogadva82ms3380 KiB
79Elfogadva17ms2028 KiB
80Elfogadva59ms2856 KiB
81Elfogadva24ms1332 KiB
82Elfogadva27ms1640 KiB
83Elfogadva24ms2100 KiB
84Elfogadva37ms2508 KiB
85Elfogadva63ms3184 KiB
86Elfogadva43ms1844 KiB
87Elfogadva61ms3128 KiB
88Elfogadva25ms2100 KiB
89Elfogadva28ms2100 KiB
90Elfogadva75ms3124 KiB
91Elfogadva97ms3952 KiB
92Elfogadva75ms3124 KiB
93Elfogadva90ms3344 KiB
94Elfogadva75ms3124 KiB
95Elfogadva43ms3216 KiB
96Elfogadva52ms3764 KiB
97Elfogadva50ms4032 KiB
98Elfogadva48ms3052 KiB
99Elfogadva61ms3380 KiB
100Időlimit túllépés1.082s3156 KiB
101Időlimit túllépés1.085s3120 KiB
102Időlimit túllépés1.082s3376 KiB
103Időlimit túllépés1.085s3380 KiB
104Időlimit túllépés1.087s3124 KiB