280642026-05-14 18:12:28sarminSzimmetrikus sorozatcpp17Elfogadva 100/100535ms28324 KiB
#include <bits/stdc++.h>
using ll = long long;
using namespace std;

map<int, vector<int>> g;
map<int, bool> vis;
vector<vector<int>> component;

void dfs(int cur) {
    vis[cur] = true;
    component.back().push_back(cur); // komponens elemeinek eltárolása
    for (int i : g[cur]) {
        if (!vis[i]) {
            dfs(i);
        }
    }
}

int main() {

    ios_base::sync_with_stdio(false);
    cin.tie(0);
    
    int n; cin >> n;
    vector<int> a(n);
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }

    for (int i = 0; i < n; i++) g[a[i]].push_back(a[n - 1 - i]);

    vector<int> empty; // ez az empty vektor
    for (int i : a) {
        if (!vis[i]) {
            component.push_back(empty);
            dfs(i);
        }
    }

    vector<pair<int, int>> ans;
    for (auto i : component) {
        sort(i.begin(), i.end());
        bool elso = true;
        for (int j : i) {
            if (elso) { elso = false; continue; }
            ans.push_back({j, i[0]});
        }
    }

    cout << ans.size() << "\n";
    for (auto& [i, j] : ans) cout << i << " " << j << "\n";
	
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Elfogadva143ms10868 KiB
subtask29/9
3Elfogadva1ms508 KiB
4Elfogadva1ms512 KiB
5Elfogadva1ms316 KiB
6Elfogadva1ms512 KiB
7Elfogadva1ms500 KiB
subtask314/14
8Elfogadva1ms316 KiB
9Elfogadva1ms508 KiB
10Elfogadva1ms316 KiB
11Elfogadva1ms316 KiB
12Elfogadva1ms316 KiB
13Elfogadva1ms316 KiB
subtask425/25
14Elfogadva2ms316 KiB
15Elfogadva2ms316 KiB
16Elfogadva4ms564 KiB
17Elfogadva4ms888 KiB
18Elfogadva3ms568 KiB
19Elfogadva3ms396 KiB
20Elfogadva3ms564 KiB
21Elfogadva4ms564 KiB
subtask522/22
22Elfogadva240ms21112 KiB
23Elfogadva217ms28324 KiB
24Elfogadva209ms28188 KiB
25Elfogadva224ms20992 KiB
26Elfogadva204ms20968 KiB
27Elfogadva188ms27344 KiB
28Elfogadva190ms27480 KiB
29Elfogadva215ms20980 KiB
30Elfogadva172ms20968 KiB
31Elfogadva181ms27828 KiB
32Elfogadva185ms27824 KiB
33Elfogadva173ms21072 KiB
34Elfogadva172ms20964 KiB
35Elfogadva189ms22600 KiB
36Elfogadva194ms25484 KiB
37Elfogadva172ms20968 KiB
subtask630/30
38Elfogadva2ms316 KiB
39Elfogadva156ms10772 KiB
40Elfogadva1ms508 KiB
41Elfogadva1ms512 KiB
42Elfogadva1ms316 KiB
43Elfogadva1ms512 KiB
44Elfogadva1ms500 KiB
45Elfogadva1ms316 KiB
46Elfogadva1ms508 KiB
47Elfogadva1ms316 KiB
48Elfogadva1ms316 KiB
49Elfogadva1ms316 KiB
50Elfogadva1ms316 KiB
51Elfogadva2ms316 KiB
52Elfogadva2ms316 KiB
53Elfogadva4ms564 KiB
54Elfogadva4ms888 KiB
55Elfogadva3ms568 KiB
56Elfogadva3ms396 KiB
57Elfogadva3ms564 KiB
58Elfogadva4ms564 KiB
59Elfogadva240ms21112 KiB
60Elfogadva217ms28324 KiB
61Elfogadva209ms28188 KiB
62Elfogadva224ms20992 KiB
63Elfogadva204ms20968 KiB
64Elfogadva188ms27344 KiB
65Elfogadva190ms27480 KiB
66Elfogadva215ms20980 KiB
67Elfogadva172ms20968 KiB
68Elfogadva181ms27828 KiB
69Elfogadva185ms27824 KiB
70Elfogadva173ms21072 KiB
71Elfogadva172ms20964 KiB
72Elfogadva189ms22600 KiB
73Elfogadva194ms25484 KiB
74Elfogadva172ms20968 KiB
75Elfogadva504ms25252 KiB
76Elfogadva256ms12780 KiB
77Elfogadva72ms5184 KiB
78Elfogadva263ms12784 KiB
79Elfogadva163ms6004 KiB
80Elfogadva372ms21260 KiB
81Elfogadva375ms21100 KiB
82Elfogadva393ms21156 KiB
83Elfogadva535ms26088 KiB
84Elfogadva79ms5288 KiB
85Elfogadva165ms6064 KiB
86Elfogadva372ms22144 KiB
87Elfogadva437ms22240 KiB
88Elfogadva430ms22240 KiB
89Elfogadva411ms22248 KiB