#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 5;
int n, D, h[N], a[N], b[N], m;
void init(int _N, int _D, int H[]) {
    n = _N;
    D = _D;
    for(int i=0; i<n; i++) h[i] = H[i];
}   
void curseChanges(int U, int A[], int B[]) {
    m = U;
    for(int i=0; i<m; i++) {
        a[i] = A[i];
        b[i] = B[i];
        if(a[i] > b[i]) swap(a[i], b[i]);
    }
}
int question(int x, int y, int v) {
    int ans = 1e9;
    set<pair<int, int> > st;
    for(int i=0; i<v; i++) {
        if(st.count({ a[i], b[i] })) {
            st.erase({ a[i], b[i] });
        } else {
            st.insert({ a[i], b[i] });
        }
    }
    vector<int> L, R;
    for(auto [u, v] : st) {
        if(u == x || v == x) L.push_back(h[u^v^x]);
        if(u == y || v == y) R.push_back(h[u^v^y]);
    }
    for(auto u : L)
        for(auto v : R)
            ans = min(ans, abs(u - v));
    return ans;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |