Submission

Status:
[-SSSS][SSSSS][SSSSSSSSSS]

Score: 0

User: lolipop

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

Language: cpp

Time: 0.002 second

Submitted On: 2025-03-24 10:45:30

#include <iostream>

using namespace std;
#define ll long long

ll l = 0, r = 2e7;
ll x[1000], y[1000];

int main()
{
    ll n, k = 0;
    cin >> n;

    for (int i = 0; i < n; i++)
    {
        cin >> x[i] >> y[i];
        y[i]--;
        k += y[i] - x[i] + 1; 
    }

    while (l < r)
    {
        ll m = (l + r) / 2;
        ll cnt = 0;

        for (int i = 0; i < n; i++)
        {
            if (m < x[i])
            {
                continue;
            }
            if (m > y[i])
            {
                cnt += y[i] - x[i] + 1;
            }
            else
            {
                cnt += m - x[i] + 1;
            }
        }

        if (cnt > k / 2 + 1) 
        {
            r = m;
        }
        else
        {
            l = m + 1;
        }
    }

    cout << l;
}