Submission
Status:
[PPPPP][PPPPP][PPPPPPPPPP]
Subtask/Task Score:
{20/20}{30/30}{50/50}
Score: 100
User: Kitsunox
Problemset: ห้องสมุดเมือง 3M
Language: cpp
Time: 0.003 second
Submitted On: 2025-12-16 12:06:43
#include <bits/stdc++.h>
using namespace std;
int n,mn = 1e9,bookct;
vector<pair<int,int>> mp;
bool ck(int md){
int ct = 0;
for(auto [a,b] : mp){
if(md >= b-1)ct += b-a;
else if(md >= a)ct += md-a+1;
}
return ct >= bookct;
}
int main(){
cin >> n;
for(int i = 0;i < n;i++){
int a,b;
cin >> a >> b;
mp.push_back({a,b});
mn = min(mn,a);
bookct += b-a;
}
bookct /= 2;
int l = mn,r = 2e7+10;
while(l < r){
int md = (l+r)/2;
if(ck(md)) r = md;
else l = md+1;
}
cout << l;
}