251202026-02-18 01:26:01999Bizonyításcpp17Accepted 50/5097ms1484 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")

const int MAXN=501;
bitset<MAXN> b[MAXN];

signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int n,q;cin>>n>>q;
    for(int i = 0;i<n;i++)b[i].set(i);
    while(q--){
        int t,x,y;cin>>t>>x>>y;
        x--;y--;
        if(t==1){
            if(!b[x].test(y)){
                b[x].set(y);
                b[x]|=b[y];
                for(int i = 0;i<n;i++){
                    if(b[i].test(x))
                        b[i]|=b[x];
                }
            }
        }
        else{
            cout<<(b[x].test(y)?"IGEN":"NEM")<<'\n';
        }
    }
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted1ms500 KiB
2Accepted64ms912 KiB
subtask210/10
3Accepted2ms500 KiB
4Accepted4ms316 KiB
5Accepted14ms316 KiB
6Accepted12ms316 KiB
7Accepted14ms484 KiB
8Accepted1ms316 KiB
9Accepted2ms316 KiB
10Accepted4ms316 KiB
11Accepted12ms316 KiB
12Accepted9ms316 KiB
subtask315/15
13Accepted2ms316 KiB
14Accepted2ms500 KiB
15Accepted1ms500 KiB
16Accepted2ms508 KiB
17Accepted1ms316 KiB
18Accepted1ms316 KiB
19Accepted1ms316 KiB
20Accepted1ms316 KiB
21Accepted1ms316 KiB
22Accepted1ms316 KiB
23Accepted1ms508 KiB
24Accepted1ms316 KiB
25Accepted2ms316 KiB
26Accepted2ms316 KiB
27Accepted2ms500 KiB
28Accepted2ms316 KiB
29Accepted1ms316 KiB
30Accepted1ms392 KiB
31Accepted1ms316 KiB
32Accepted1ms316 KiB
33Accepted1ms316 KiB
34Accepted1ms316 KiB
35Accepted1ms316 KiB
36Accepted1ms316 KiB
37Accepted1ms316 KiB
38Accepted1ms316 KiB
subtask425/25
39Accepted2ms316 KiB
40Accepted64ms820 KiB
41Accepted2ms500 KiB
42Accepted4ms316 KiB
43Accepted14ms316 KiB
44Accepted12ms316 KiB
45Accepted14ms484 KiB
46Accepted1ms316 KiB
47Accepted2ms316 KiB
48Accepted4ms316 KiB
49Accepted12ms316 KiB
50Accepted9ms316 KiB
51Accepted2ms500 KiB
52Accepted1ms500 KiB
53Accepted2ms508 KiB
54Accepted1ms316 KiB
55Accepted1ms316 KiB
56Accepted1ms316 KiB
57Accepted1ms316 KiB
58Accepted1ms316 KiB
59Accepted1ms316 KiB
60Accepted1ms508 KiB
61Accepted1ms316 KiB
62Accepted2ms316 KiB
63Accepted2ms316 KiB
64Accepted2ms500 KiB
65Accepted2ms316 KiB
66Accepted1ms316 KiB
67Accepted1ms392 KiB
68Accepted1ms316 KiB
69Accepted1ms316 KiB
70Accepted1ms316 KiB
71Accepted1ms316 KiB
72Accepted1ms316 KiB
73Accepted1ms316 KiB
74Accepted1ms316 KiB
75Accepted1ms316 KiB
76Accepted23ms824 KiB
77Accepted4ms476 KiB
78Accepted54ms756 KiB
79Accepted4ms316 KiB
80Accepted39ms580 KiB
81Accepted20ms564 KiB
82Accepted19ms564 KiB
83Accepted14ms500 KiB
84Accepted21ms564 KiB
85Accepted39ms552 KiB
86Accepted35ms960 KiB
87Accepted39ms564 KiB
88Accepted12ms316 KiB
89Accepted14ms508 KiB
90Accepted61ms1076 KiB
91Accepted46ms564 KiB
92Accepted59ms1076 KiB
93Accepted41ms716 KiB
94Accepted61ms1076 KiB
95Accepted35ms820 KiB
96Accepted46ms564 KiB
97Accepted43ms564 KiB
98Accepted41ms888 KiB
99Accepted52ms968 KiB
100Accepted86ms1336 KiB
101Accepted86ms1484 KiB
102Accepted97ms1332 KiB
103Accepted97ms1328 KiB
104Accepted85ms1212 KiB