279042026-05-13 17:25:08LazurAndrasÉvzárócpp17Elfogadva 100/100637ms41788 KiB
#include <bits/stdc++.h>
using namespace std;
#define int long long

vector<vector<pair<int, int>>>g;
vector<int>cnt, ans;
map<pair<int, int>, bool>vis;
int tin = 0;

void dfs(int v)
{
	while(!g[v].empty() && vis[{v, g[v].back().first}]) g[v].pop_back();
	if(g[v].empty()) return;
	auto [u, idx] = g[v].back();
	g[v].pop_back();
	cnt[v]--; cnt[u]--;
	vis[{v, u}] = vis[{u, v}] = 1;
	ans[idx] = ++tin % 2;
	dfs(u);
}

signed main() {
    ios::sync_with_stdio(false);cin.tie(nullptr);
	int n; cin >> n;
	vector<pair<int, int>>a(n);
	vector<int>b(n), c(n);
	for(int i = 0; i < n; i++)
	{
		cin >> a[i].first >> a[i].second;
		b[i] = a[i].first;
		c[i] = a[i].second;
	}
	sort(b.begin(), b.end());
	sort(c.begin(), c.end());
	b.erase(unique(b.begin(), b.end()), b.end());
	c.erase(unique(c.begin(), c.end()), c.end());
	map<int, int>id, id2;
	int k = (int)b.size(), l = (int)c.size();
	for(int i = 0; i < k; i++) id[b[i]] = i;
	for(int i = 0; i < l; i++) id2[c[i]] = i+k;
	int m = k+l;
	ans.resize(n); g.resize(m); cnt.resize(m);
	int w = 0;
	for(auto [i, j] : a)
	{
		g[id[i]].push_back({id2[j], w});
		g[id2[j]].push_back({id[i], w++});
		cnt[id[i]]++;
		cnt[id2[j]]++;
	}
	for(int i = 0; i < m; i++)
	{
		if(cnt[i] % 2) dfs(i);
	}
	for(int i = 0; i < m; i++) dfs(i);
	for(int u : ans) cout << (u % 2 ? 'L' : 'F');
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Elfogadva372ms22576 KiB
subtask25/5
3Elfogadva409ms30880 KiB
4Elfogadva368ms31076 KiB
subtask37/7
5Elfogadva409ms30880 KiB
6Elfogadva368ms31076 KiB
7Elfogadva441ms31228 KiB
8Elfogadva488ms31836 KiB
9Elfogadva532ms32564 KiB
10Elfogadva593ms41780 KiB
subtask420/20
11Elfogadva592ms31536 KiB
12Elfogadva495ms31476 KiB
13Elfogadva587ms31540 KiB
14Elfogadva490ms31544 KiB
15Elfogadva469ms32252 KiB
16Elfogadva637ms41788 KiB
subtask513/13
17Elfogadva1ms512 KiB
18Elfogadva1ms316 KiB
19Elfogadva1ms512 KiB
20Elfogadva1ms512 KiB
21Elfogadva1ms540 KiB
22Elfogadva1ms332 KiB
23Elfogadva1ms316 KiB
24Elfogadva1ms316 KiB
25Elfogadva1ms508 KiB
26Elfogadva1ms332 KiB
27Elfogadva1ms316 KiB
28Elfogadva1ms400 KiB
29Elfogadva1ms316 KiB
30Elfogadva1ms316 KiB
31Elfogadva1ms316 KiB
32Elfogadva1ms316 KiB
33Elfogadva2ms320 KiB
subtask620/20
34Elfogadva1ms512 KiB
35Elfogadva1ms316 KiB
36Elfogadva1ms512 KiB
37Elfogadva1ms512 KiB
38Elfogadva1ms540 KiB
39Elfogadva1ms332 KiB
40Elfogadva1ms316 KiB
41Elfogadva1ms316 KiB
42Elfogadva1ms508 KiB
43Elfogadva1ms332 KiB
44Elfogadva1ms316 KiB
45Elfogadva1ms400 KiB
46Elfogadva1ms316 KiB
47Elfogadva1ms316 KiB
48Elfogadva1ms316 KiB
49Elfogadva1ms316 KiB
50Elfogadva2ms320 KiB
51Elfogadva3ms680 KiB
52Elfogadva3ms756 KiB
53Elfogadva3ms564 KiB
54Elfogadva3ms564 KiB
55Elfogadva3ms628 KiB
56Elfogadva3ms564 KiB
57Elfogadva2ms564 KiB
58Elfogadva3ms748 KiB
59Elfogadva3ms756 KiB
60Elfogadva3ms564 KiB
61Elfogadva3ms564 KiB
62Elfogadva3ms564 KiB
63Elfogadva3ms564 KiB
64Elfogadva3ms568 KiB
65Elfogadva3ms564 KiB
subtask735/35
66Elfogadva1ms512 KiB
67Elfogadva333ms22768 KiB
68Elfogadva409ms30880 KiB
69Elfogadva368ms31076 KiB
70Elfogadva441ms31228 KiB
71Elfogadva488ms31836 KiB
72Elfogadva532ms32564 KiB
73Elfogadva593ms41780 KiB
74Elfogadva592ms31536 KiB
75Elfogadva495ms31476 KiB
76Elfogadva587ms31540 KiB
77Elfogadva490ms31544 KiB
78Elfogadva469ms32252 KiB
79Elfogadva637ms41788 KiB
80Elfogadva1ms316 KiB
81Elfogadva1ms512 KiB
82Elfogadva1ms512 KiB
83Elfogadva1ms540 KiB
84Elfogadva1ms332 KiB
85Elfogadva1ms316 KiB
86Elfogadva1ms316 KiB
87Elfogadva1ms508 KiB
88Elfogadva1ms332 KiB
89Elfogadva1ms316 KiB
90Elfogadva1ms400 KiB
91Elfogadva1ms316 KiB
92Elfogadva1ms316 KiB
93Elfogadva1ms316 KiB
94Elfogadva1ms316 KiB
95Elfogadva2ms320 KiB
96Elfogadva3ms680 KiB
97Elfogadva3ms756 KiB
98Elfogadva3ms564 KiB
99Elfogadva3ms564 KiB
100Elfogadva3ms628 KiB
101Elfogadva3ms564 KiB
102Elfogadva2ms564 KiB
103Elfogadva3ms748 KiB
104Elfogadva3ms756 KiB
105Elfogadva3ms564 KiB
106Elfogadva3ms564 KiB
107Elfogadva3ms564 KiB
108Elfogadva3ms564 KiB
109Elfogadva3ms568 KiB
110Elfogadva3ms564 KiB
111Elfogadva352ms20468 KiB
112Elfogadva326ms21300 KiB
113Elfogadva321ms21372 KiB
114Elfogadva324ms21492 KiB
115Elfogadva317ms21292 KiB
116Elfogadva330ms21744 KiB
117Elfogadva324ms21232 KiB
118Elfogadva296ms21748 KiB
119Elfogadva370ms21724 KiB
120Elfogadva384ms21496 KiB
121Elfogadva356ms21504 KiB