Submission

Status:

[PPPPP][PPPPP][PPPPPPPPPP]

Subtask/Task Score:

{20/20}{30/30}{50/50}

Score: 100

User: Quaoar

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

Language: cpp

Time: 0.057 second

Submitted On: 2025-11-16 20:22:58

#include <iostream>
#include <algorithm>
using namespace std;
int arr[20000001];

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int n;
    int a,b,pos;
    int mx = -1 , mn = 2e7;
    int book = 0;
    cin >> n;
    
    for (int i = 0 ; i < n ; i++){
        cin >> a >> b;
        book += b - a;
        mx = max(mx , b);
        mn = min(mn , a);
        arr[a]++;
        arr[b]--;
    }
    
    //literally magic line of code
    for (int i = 1 ; i < mx ; i++){
        arr[i] = arr[i] + arr[i - 1];
    }
    
    pos = book / 2;
    int cnt = 0;
    for (int i = mn ; i < mx ; i++){
        cnt += arr[i];
        if (cnt >= pos){
            cout << i;
            return 0;
        }
    }

    return 0;
}