Submission

Status:
[P-SSS][SSSSS][SSSSSSSSSS]

Score: 0

User: Nakornrat

Problemset: ห้องสมุดเมือง 3M

Language: cpp

Time: 0.002 second

Submitted On: 2025-03-19 18:06:49

#include <bits/stdc++.h>
using namespace std;
#define endl '\n'
using ll = long long int;
vector<pair<int, int>> a;
int n;
int main()
{
    cin>>n;
    a.resize(n);
    int l = INT_MAX, r = 0;
    int sz = 0;
    for(int i=0;i<n;i++){
        cin>>a[i].first>>a[i].second;
        sz+=a[i].second-a[i].first;
        l = min(a[i].first, l);
        r = max(a[i].second, r);
    }
    // cout<<sz<<' '<<l<<' '<<r;
    sort(a.begin(), a.end());
    int medpos = sz/2;
    int cnt = 0;
    for(int i=0;i<n;i++){
        int range = a[i].second-a[i].first;
        if(medpos<=cnt+range){
            cout<<a[i].first+medpos-1-cnt;
            return 0;
        }
        cnt+=range;
    }
}