#include <bits/stdc++.h>
using namespace std;
#define int long long
#define INF 9e18
void solve() {
    int n;
    cin >> n;
    vector<vector<int>> cnt(3, vector<int>(n + 1));
    int ans = 0;
    for (int i = 0; i < 2 * n; i++) {
        int r, c; cin >> c >> r;
        if (r < 1) ans += (1 - r), r = 1;
        if (r > 2) ans += (r - 2), r = 2;
        if (c < 1) ans += (1 - c), c = 1;
        if (c > n) ans += (c - n), c = n;
        cnt[r][c]++;
    }
    stack<int> extra[3];
    stack<int> zero[3];
    for (int j = 1; j <= n; j++) {
        for (int i = 1; i <= 2; i++) {
            if (cnt[i][j] == 0 && extra[i].size()) {
                ans += abs(j - extra[i].top());
                cnt[i][extra[i].top()]--;
                if (cnt[i][extra[i].top()] == 1) extra[i].pop();
                cnt[i][j]++;
            }
        }
        for (int i = 1; i <= 2; i++) {
            while (zero[i].size() && cnt[i][j] > 1) {
                ans += abs(j - zero[i].top());
                cnt[i][zero[i].top()]++;
                zero[i].pop();
                cnt[i][j]--;
            }
        }
        for (int i = 1; i <= 2; i++) {
            while (zero[3 - i].size() && cnt[i][j] > 1) {
                ans += abs(j - zero[3 - i].top()) + 1;
                cnt[3 - i][zero[3 - i].top()]++;
                zero[3 - i].pop();
                cnt[i][j]--;
            }
        }
        for (int i = 1; i <= 2; i++) {
            if (cnt[i][j] > 1) extra[i].push(j);
            if (cnt[i][j] == 0) zero[i].push(j);
        }
    }
    for (int j = 1; j <= n; j++) {
        for (int i = 1; i <= 2; i++) {
            if (cnt[i][j] == 0 && extra[3 - i].size()) {
                ans += abs(j - extra[3 - i].top()) + 1;
                cnt[3 - i][extra[3 - i].top()]--;
                if (cnt[3 - i][extra[3 - i].top()] == 1) extra[3 - i].pop();
                cnt[i][j]++;
            }
        }
    }
    cout << ans;
}
signed main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    solve();
    return 0;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |