Submission
Status:
[PP-SS][SSSSS][SSSSSSSSSS]
Score: 0
User: osensunny
Problemset: ห้องสมุดเมือง 3M
Language: cpp
Time: 0.002 second
Submitted On: 2025-03-21 15:33:27
#include<bits/stdc++.h>
using namespace std;
#define ii pair<int, int>
#define fi first
#define se second
int N, x, y, cnt, l, r=INT_MAX;
vector<ii> vect(105);
bool check(int num){
int idx = 0;
for(int i=0; i<N; i++){
if(num < vect[i].fi) continue;
else if(num <= vect[i].se) idx += num-vect[i].fi+1;
else idx += vect[i].se-vect[i].fi+1;
}
return (idx <= (cnt/2-1));
}
int main(){
ios_base::sync_with_stdio(false); cin.tie(NULL);
cin >> N;
for(int i=0; i<N; i++){
cin >> x >> y;
vect[i] = {x, y-1};
cnt += y-x;
}
while(l <= r){
int mid = (l+r)>>1;
if(check(mid)) l = mid+1;
else r = mid-1;
}
cout << l;
return 0;
}