Submission #1357767

#TimeUsernameProblemLanguageResultExecution timeMemory
1357767neptunnsA String Problem (EGOI25_stringproblem)C++20
0 / 100
2094 ms4020 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define int long long
#define maxn 500005
#define mi LLONG_MIN
#define ma LLONG_MAX
#define mod 1000000007
#define pb push_back
#define S second
#define F first
struct st {
    int c, x, y;
};
void solve() {
    int n;
    cin >> n;
    vector<pair<int, int>> a(n * 2);
    for (int i = 0; i < n; i++) {
        int l, r;
        cin >> l >> r;
        a[l] = {i, r};
        a[r] = {i, l};
    }
    int ans = ma;
    vector<st> vec;
    for (int x = 0; x < n * 2; x++) {
        int y = (x + 1) % n;
        vector<st> v;
        vector<pair<int, int>> na = a;
        for (int l = x, r = y, cnt = 0; cnt < n; cnt++) {
            // cout << l << " " << r << "\n";
            if (a[l].S != r) {
                v.pb({a[l].F, a[l].S, r});
            }
            l = (l - 1 + n * 2) % (n * 2);
            r = (r + 1) % (n * 2);
        }
        // cout << "\n";
        /*cout << v.size() << "\n";
        for (auto [p, s, e] : v) {
            cout << p << " " << s << " " << e << "\n";
        }*/
        if (v.size() < ans) {
            ans = v.size();
            vec = v;
        }
    }
    cout << ans << "\n";
    for (auto [p, s, e] : vec) {
        cout << p << " " << s << " " << e << "\n";
    }
}

int32_t main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int t = 1;
    // cin >> t;
    while (t--) solve();
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...