237162026-01-28 09:11:03PappMatyasBizonyításcpp17Time limit exceeded 25/501.1s8608 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))
		{
			swap(v[x][0], v[x][i]);
			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
1Accepted1ms528 KiB
2Accepted762ms5076 KiB
subtask210/10
3Accepted2ms500 KiB
4Accepted12ms820 KiB
5Accepted116ms1508 KiB
6Accepted52ms1056 KiB
7Accepted79ms1684 KiB
8Accepted1ms316 KiB
9Accepted1ms428 KiB
10Accepted14ms820 KiB
11Accepted61ms1560 KiB
12Accepted90ms984 KiB
subtask315/15
13Accepted1ms316 KiB
14Accepted2ms316 KiB
15Accepted1ms508 KiB
16Accepted1ms316 KiB
17Accepted1ms316 KiB
18Accepted1ms316 KiB
19Accepted1ms316 KiB
20Accepted1ms316 KiB
21Accepted1ms316 KiB
22Accepted1ms508 KiB
23Accepted1ms316 KiB
24Accepted1ms552 KiB
25Accepted1ms316 KiB
26Accepted1ms316 KiB
27Accepted1ms316 KiB
28Accepted1ms316 KiB
29Accepted1ms316 KiB
30Accepted1ms316 KiB
31Accepted1ms316 KiB
32Accepted1ms316 KiB
33Accepted1ms316 KiB
34Accepted1ms316 KiB
35Accepted1ms332 KiB
36Accepted1ms316 KiB
37Accepted1ms508 KiB
38Accepted1ms316 KiB
subtask40/25
39Accepted1ms316 KiB
40Accepted763ms5188 KiB
41Accepted2ms500 KiB
42Accepted12ms820 KiB
43Accepted116ms1508 KiB
44Accepted52ms1056 KiB
45Accepted79ms1684 KiB
46Accepted1ms316 KiB
47Accepted1ms428 KiB
48Accepted14ms820 KiB
49Accepted61ms1560 KiB
50Accepted90ms984 KiB
51Accepted2ms316 KiB
52Accepted1ms508 KiB
53Accepted1ms316 KiB
54Accepted1ms316 KiB
55Accepted1ms316 KiB
56Accepted1ms316 KiB
57Accepted1ms316 KiB
58Accepted1ms316 KiB
59Accepted1ms508 KiB
60Accepted1ms316 KiB
61Accepted1ms552 KiB
62Accepted1ms316 KiB
63Accepted1ms316 KiB
64Accepted1ms316 KiB
65Accepted1ms316 KiB
66Accepted1ms316 KiB
67Accepted1ms316 KiB
68Accepted1ms316 KiB
69Accepted1ms316 KiB
70Accepted1ms316 KiB
71Accepted1ms316 KiB
72Accepted1ms332 KiB
73Accepted1ms316 KiB
74Accepted1ms508 KiB
75Accepted1ms316 KiB
76Accepted78ms4620 KiB
77Accepted28ms716 KiB
78Accepted602ms4696 KiB
79Accepted27ms840 KiB
80Accepted345ms4812 KiB
81Accepted98ms2732 KiB
82Accepted114ms2492 KiB
83Accepted57ms1280 KiB
84Accepted150ms2784 KiB
85Accepted316ms2840 KiB
86Accepted214ms4520 KiB
87Accepted337ms4812 KiB
88Accepted75ms1508 KiB
89Accepted79ms1532 KiB
90Accepted79ms8608 KiB
91Accepted365ms3248 KiB
92Accepted78ms8604 KiB
93Accepted335ms3072 KiB
94Accepted79ms8608 KiB
95Time limit exceeded1.077s948 KiB
96Time limit exceeded1.085s1076 KiB
97Time limit exceeded1.088s1152 KiB
98Time limit exceeded1.1s1240 KiB
99Time limit exceeded1.077s820 KiB
100Time limit exceeded1.082s2728 KiB
101Time limit exceeded1.082s2816 KiB
102Time limit exceeded1.1s2724 KiB
103Time limit exceeded1.085s2744 KiB
104Time limit exceeded1.082s2724 KiB