236622026-01-27 08:35:45PappMatyasBizonyításcpp17Time limit exceeded 25/501.088s8608 KiB
#include <iostream>
#include <vector>

using namespace std;

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

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

	done[x] = true;
	int s = v[x].size();
	int val;
	for (int i = 0; i < s; i++)
	{
		val = v[x][i];
		if (!done[val])
		{
			if (Connects(val, 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
1Accepted1ms504 KiB
2Time limit exceeded1.052s5076 KiB
subtask210/10
3Accepted2ms316 KiB
4Accepted14ms820 KiB
5Accepted159ms1620 KiB
6Accepted74ms1048 KiB
7Accepted115ms1528 KiB
8Accepted1ms316 KiB
9Accepted1ms316 KiB
10Accepted18ms820 KiB
11Accepted86ms1516 KiB
12Accepted125ms992 KiB
subtask315/15
13Accepted1ms316 KiB
14Accepted1ms500 KiB
15Accepted1ms508 KiB
16Accepted1ms316 KiB
17Accepted1ms316 KiB
18Accepted2ms428 KiB
19Accepted1ms316 KiB
20Accepted1ms316 KiB
21Accepted1ms316 KiB
22Accepted1ms316 KiB
23Accepted1ms316 KiB
24Accepted1ms316 KiB
25Accepted1ms316 KiB
26Accepted1ms500 KiB
27Accepted1ms316 KiB
28Accepted1ms316 KiB
29Accepted1ms316 KiB
30Accepted1ms388 KiB
31Accepted1ms316 KiB
32Accepted1ms316 KiB
33Accepted1ms316 KiB
34Accepted1ms316 KiB
35Accepted1ms556 KiB
36Accepted1ms316 KiB
37Accepted1ms316 KiB
38Accepted1ms316 KiB
subtask40/25
39Accepted1ms316 KiB
40Time limit exceeded1.054s5088 KiB
41Accepted2ms316 KiB
42Accepted14ms820 KiB
43Accepted159ms1620 KiB
44Accepted74ms1048 KiB
45Accepted115ms1528 KiB
46Accepted1ms316 KiB
47Accepted1ms316 KiB
48Accepted18ms820 KiB
49Accepted86ms1516 KiB
50Accepted125ms992 KiB
51Accepted1ms500 KiB
52Accepted1ms508 KiB
53Accepted1ms316 KiB
54Accepted1ms316 KiB
55Accepted2ms428 KiB
56Accepted1ms316 KiB
57Accepted1ms316 KiB
58Accepted1ms316 KiB
59Accepted1ms316 KiB
60Accepted1ms316 KiB
61Accepted1ms316 KiB
62Accepted1ms316 KiB
63Accepted1ms500 KiB
64Accepted1ms316 KiB
65Accepted1ms316 KiB
66Accepted1ms316 KiB
67Accepted1ms388 KiB
68Accepted1ms316 KiB
69Accepted1ms316 KiB
70Accepted1ms316 KiB
71Accepted1ms316 KiB
72Accepted1ms556 KiB
73Accepted1ms316 KiB
74Accepted1ms316 KiB
75Accepted1ms316 KiB
76Accepted86ms4584 KiB
77Accepted37ms752 KiB
78Accepted860ms4900 KiB
79Accepted37ms820 KiB
80Accepted504ms4948 KiB
81Accepted130ms2736 KiB
82Accepted158ms2492 KiB
83Accepted81ms1280 KiB
84Accepted210ms2788 KiB
85Accepted444ms2912 KiB
86Accepted291ms4524 KiB
87Accepted486ms4808 KiB
88Accepted107ms1552 KiB
89Accepted108ms1636 KiB
90Accepted79ms8608 KiB
91Accepted441ms3248 KiB
92Accepted78ms8604 KiB
93Accepted407ms3116 KiB
94Accepted76ms8608 KiB
95Time limit exceeded1.077s1520 KiB
96Time limit exceeded1.088s1292 KiB
97Time limit exceeded1.08s1188 KiB
98Time limit exceeded1.083s1616 KiB
99Time limit exceeded1.082s1076 KiB
100Time limit exceeded1.08s4768 KiB
101Time limit exceeded1.08s2724 KiB
102Time limit exceeded1.08s2724 KiB
103Time limit exceeded1.083s2616 KiB
104Time limit exceeded1.088s4828 KiB