Submission

Status:

[-SSSS][SSSSS][SSSSSSSSSS]

Subtask/Task Score:

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

Score: 0

User: koon

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

Language: cpp

Time: 0.003 second

Submitted On: 2026-03-06 09:45:53

#include <bits/stdc++.h>
using namespace std;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    int n;
    cin >> n;

    vector<pair<long long,long long>> seg(n);
    long long total = 0;

    for (int i = 0; i < n; i++) {
        cin >> seg[i].first >> seg[i].second;
        total += seg[i].second - seg[i].first;
    }

    long long pos = total / 2;

    long long l = 0, r = 20000000;

    while (l < r) {
        long long mid = (l + r) / 2;

        long long cnt = 0;
        for (auto [x, y] : seg) {
            cnt += max(0LL, min(mid + 1, y) - x);
        }

        if (cnt > pos)
            r = mid;
        else
            l = mid + 1;
    }

    cout << l << "\n";
}