Submission
Status:
[PPPPP][PPPPP][PPPPPPPPPP]
Score: 100
User: kaka
Problemset: ห้องสมุดเมือง 3M
Language: cpp
Time: 0.002 second
Submitted On: 2025-03-25 00:24:07
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main()
{
ll n;
cin >> n;
vector<ll> x(n), y(n);
ll count = 0;
for(ll i = 0; i < n; i++){
cin >> x[i] >> y[i];
y[i]--;
count += y[i] - x[i] + 1;
}
ll l = 0, r = 2e7;
while(l < r){
ll m = l + (r - l)/2;
ll mxc = 0;
for(int i = 0; i < n; i++){
if(m < x[i]){
continue;
}
else if(m > y[i]){
mxc += y[i] - x[i] + 1;
}
else{
mxc += m - x[i] + 1;
}
}
if(mxc > max(count/2 - 1, 0ll)){
r = m;
}
else{
l = m + 1;
}
}
cout << l << endl;
}