236632026-01-27 08:36:30PappMatyasBizonyításcpp17Time limit exceeded 25/501.1s8776 KiB
#include <iostream>
#include <vector>

using namespace std;

vector<vector<int>> v;
vector<bool> done;

static bool Connects(int x, int y)
{
	if (done[x])
	{
		return false;
	}
	if (x == y)
	{
		return true;
	}

	done[x] = true;
	int s = v[x].size();
	for (int i = 0; i < s; i++)
	{
		if (Connects(v[x][i], y))
		{
			return true;
		}
	}
	return false;
}

int main()
{
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	int n, q;
	cin >> n >> q;
	
	vector<string> ans;
	done = vector<bool>(n);

	for (int i = 0; i < n; i++)
	{
		v.push_back(vector<int>{});
	}

	for (int i = 0; i < q; i++)
	{
		int t, x, y;
		cin >> t >> x >> y;

		x--; y--;

		if (t == 2)
		{
			fill(done.begin(), done.end(), false);
			ans.push_back(Connects(x, y) ? "IGEN" : "NEM");
		}
		else
		{
			v[x].push_back(y);
		}
	}

	for (string k : ans)
	{
		cout << k << "\n";
	}
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted1ms316 KiB
2Accepted986ms5052 KiB
subtask210/10
3Accepted3ms316 KiB
4Accepted14ms820 KiB
5Accepted150ms1568 KiB
6Accepted68ms1088 KiB
7Accepted105ms1636 KiB
8Accepted2ms508 KiB
9Accepted2ms316 KiB
10Accepted17ms820 KiB
11Accepted79ms1576 KiB
12Accepted116ms992 KiB
subtask315/15
13Accepted1ms512 KiB
14Accepted2ms316 KiB
15Accepted1ms544 KiB
16Accepted1ms316 KiB
17Accepted1ms316 KiB
18Accepted1ms316 KiB
19Accepted1ms424 KiB
20Accepted1ms316 KiB
21Accepted1ms316 KiB
22Accepted1ms432 KiB
23Accepted1ms316 KiB
24Accepted1ms316 KiB
25Accepted1ms316 KiB
26Accepted1ms316 KiB
27Accepted1ms316 KiB
28Accepted1ms316 KiB
29Accepted1ms316 KiB
30Accepted1ms316 KiB
31Accepted1ms316 KiB
32Accepted1ms316 KiB
33Accepted1ms316 KiB
34Accepted1ms316 KiB
35Accepted1ms316 KiB
36Accepted1ms508 KiB
37Accepted1ms316 KiB
38Accepted1ms316 KiB
subtask40/25
39Accepted1ms512 KiB
40Accepted989ms5076 KiB
41Accepted3ms316 KiB
42Accepted14ms820 KiB
43Accepted150ms1568 KiB
44Accepted68ms1088 KiB
45Accepted105ms1636 KiB
46Accepted2ms508 KiB
47Accepted2ms316 KiB
48Accepted17ms820 KiB
49Accepted79ms1576 KiB
50Accepted116ms992 KiB
51Accepted2ms316 KiB
52Accepted1ms544 KiB
53Accepted1ms316 KiB
54Accepted1ms316 KiB
55Accepted1ms316 KiB
56Accepted1ms424 KiB
57Accepted1ms316 KiB
58Accepted1ms316 KiB
59Accepted1ms432 KiB
60Accepted1ms316 KiB
61Accepted1ms316 KiB
62Accepted1ms316 KiB
63Accepted1ms316 KiB
64Accepted1ms316 KiB
65Accepted1ms316 KiB
66Accepted1ms316 KiB
67Accepted1ms316 KiB
68Accepted1ms316 KiB
69Accepted1ms316 KiB
70Accepted1ms316 KiB
71Accepted1ms316 KiB
72Accepted1ms316 KiB
73Accepted1ms508 KiB
74Accepted1ms316 KiB
75Accepted1ms316 KiB
76Accepted85ms4568 KiB
77Accepted35ms676 KiB
78Accepted800ms4888 KiB
79Accepted34ms840 KiB
80Accepted467ms4920 KiB
81Accepted126ms2732 KiB
82Accepted150ms2492 KiB
83Accepted75ms1216 KiB
84Accepted196ms2784 KiB
85Accepted412ms2796 KiB
86Accepted280ms4528 KiB
87Accepted453ms4908 KiB
88Accepted101ms1504 KiB
89Accepted101ms1588 KiB
90Accepted81ms8776 KiB
91Accepted421ms3248 KiB
92Accepted81ms8608 KiB
93Accepted388ms3012 KiB
94Accepted76ms8608 KiB
95Time limit exceeded1.087s940 KiB
96Time limit exceeded1.082s1164 KiB
97Time limit exceeded1.1s1244 KiB
98Time limit exceeded1.077s1204 KiB
99Time limit exceeded1.083s700 KiB
100Time limit exceeded1.085s2724 KiB
101Time limit exceeded1.1s2788 KiB
102Time limit exceeded1.085s2788 KiB
103Time limit exceeded1.087s2724 KiB
104Time limit exceeded1.088s2724 KiB