237172026-01-28 09:15:26PappMatyasBizonyításcpp17Time limit exceeded 25/501.1s8612 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 = s - 1; i >= 0; i--)
	{
		if (Connects(v[x][i], y))
		{
			int c = v[x][i];
			v[x].erase(v[x].begin() + i);
			v[x].push_back(c);
			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
2Accepted998ms5076 KiB
subtask210/10
3Accepted3ms508 KiB
4Accepted14ms820 KiB
5Accepted156ms1512 KiB
6Accepted71ms1056 KiB
7Accepted108ms1524 KiB
8Accepted1ms316 KiB
9Accepted2ms316 KiB
10Accepted19ms836 KiB
11Accepted85ms1516 KiB
12Accepted120ms992 KiB
subtask315/15
13Accepted2ms316 KiB
14Accepted2ms316 KiB
15Accepted1ms316 KiB
16Accepted2ms512 KiB
17Accepted1ms396 KiB
18Accepted1ms316 KiB
19Accepted1ms316 KiB
20Accepted1ms316 KiB
21Accepted1ms316 KiB
22Accepted1ms316 KiB
23Accepted1ms508 KiB
24Accepted1ms500 KiB
25Accepted1ms316 KiB
26Accepted2ms332 KiB
27Accepted1ms316 KiB
28Accepted2ms620 KiB
29Accepted1ms456 KiB
30Accepted1ms316 KiB
31Accepted1ms500 KiB
32Accepted1ms316 KiB
33Accepted1ms316 KiB
34Accepted1ms316 KiB
35Accepted1ms316 KiB
36Accepted2ms500 KiB
37Accepted1ms316 KiB
38Accepted1ms316 KiB
subtask40/25
39Accepted2ms316 KiB
40Accepted999ms5176 KiB
41Accepted3ms508 KiB
42Accepted14ms820 KiB
43Accepted156ms1512 KiB
44Accepted71ms1056 KiB
45Accepted108ms1524 KiB
46Accepted1ms316 KiB
47Accepted2ms316 KiB
48Accepted19ms836 KiB
49Accepted85ms1516 KiB
50Accepted120ms992 KiB
51Accepted2ms316 KiB
52Accepted1ms316 KiB
53Accepted2ms512 KiB
54Accepted1ms396 KiB
55Accepted1ms316 KiB
56Accepted1ms316 KiB
57Accepted1ms316 KiB
58Accepted1ms316 KiB
59Accepted1ms316 KiB
60Accepted1ms508 KiB
61Accepted1ms500 KiB
62Accepted1ms316 KiB
63Accepted2ms332 KiB
64Accepted1ms316 KiB
65Accepted2ms620 KiB
66Accepted1ms456 KiB
67Accepted1ms316 KiB
68Accepted1ms500 KiB
69Accepted1ms316 KiB
70Accepted1ms316 KiB
71Accepted1ms316 KiB
72Accepted1ms316 KiB
73Accepted2ms500 KiB
74Accepted1ms316 KiB
75Accepted1ms316 KiB
76Accepted98ms4516 KiB
77Accepted37ms824 KiB
78Accepted796ms4824 KiB
79Accepted37ms820 KiB
80Accepted462ms4812 KiB
81Accepted130ms2780 KiB
82Accepted156ms2492 KiB
83Accepted81ms1280 KiB
84Accepted203ms2788 KiB
85Accepted423ms2800 KiB
86Accepted284ms4652 KiB
87Accepted451ms4816 KiB
88Accepted101ms1572 KiB
89Accepted105ms1540 KiB
90Accepted83ms8608 KiB
91Accepted446ms3248 KiB
92Accepted82ms8608 KiB
93Accepted412ms3056 KiB
94Accepted82ms8612 KiB
95Time limit exceeded1.08s820 KiB
96Time limit exceeded1.088s1076 KiB
97Time limit exceeded1.1s1264 KiB
98Time limit exceeded1.078s956 KiB
99Time limit exceeded1.087s912 KiB
100Time limit exceeded1.085s1532 KiB
101Time limit exceeded1.1s1780 KiB
102Time limit exceeded1.082s1796 KiB
103Time limit exceeded1.08s1544 KiB
104Time limit exceeded1.082s1764 KiB