#include <bits/stdc++.h>
int main(){
std::ios_base::sync_with_stdio(0);
std::cin.tie(0);
long long a, c, d, e;
std::cin >> a;
std::vector<bool>v(a);
int b;
std::cin >> b >> c;
while(b--){
std::cin >> d >> e;
for(long long i = d-1; i < e; i++)v[i] = 1;
}
e = -1;
for(long long i = c-2;i >= 0;i--){
if(v[i] == 0){
e = i+1;
break;
}
}
d = -1;
for(long long i = c;i < v.size();i++){
if(v[i] == 0){
d = i+1;
break;
}
}
if(d == -1)std::cout << e;
else if(e == -1)std::cout << d;
else{
if(d-c == c-e){
std::cout << e;
}
else if(d-c < c-e){
std::cout << d;
}
else std::cout << e;
}
return 0;
}
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 36 37 38 39 40 41 | #include <bits/stdc++.h> int main(){ std::ios_base::sync_with_stdio(0); std::cin.tie(0); long long a, c, d, e; std::cin >> a; std::vector<bool>v(a); int b; std::cin >> b >> c; while(b--){ std::cin >> d >> e; for(long long i = d-1; i < e; i++)v[i] = 1; } e = -1; for(long long i = c-2;i >= 0;i--){ if(v[i] == 0){ e = i+1; break; } } d = -1; for(long long i = c;i < v.size();i++){ if(v[i] == 0){ d = i+1; break; } } if(d == -1)std::cout << e; else if(e == -1)std::cout << d; else{ if(d-c == c-e){ std::cout << e; } else if(d-c < c-e){ std::cout << d; } else std::cout << e; } return 0; } |
English