1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
#include <vector>
#include <cmath>

using namespace std;

int main() {
    int n, m, s, l, r;
    cin >> n >> m >> s;
    vector<int> z(n + 1, 0);
    for (int i = 0; i < m; i++) {
        cin >> r >> l;
        for (int j = r; j <= l; j++) {
            z[j] = 1;
        }
    }
    
    int p = -1;
    int md = n + 1;  
    for (int i = 1; i <= n; i++) {
        if (z[i] == 0) {  
            int d = abs(s - i);
            if (d < md) {
                md = d;
                p = i;
            } else if (d== md) {
                p = min(p, i);
            }
        }
    }
    
    cout << p<< endl;

    return 0;
}