Submission #1316814

#TimeUsernameProblemLanguageResultExecution timeMemory
1316814vaishakhvTopical (NOI23_topical)C++20
0 / 100
1 ms568 KiB
// Source: https://usaco.guide/general/io

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

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

    ll n, m, q, day = 0; cin >> n >> m >> q;
    vector<pair<ll,ll>> lr(m);
    vector<int> last(n + 1, -1), gaps; 

    gaps.reserve(5e7);
    for (ll i{}; i < m; i++){
        cin >> lr[i].first >> lr[i].second;
        ll li = lr[i].first, ri = lr[i].second, gap;

        for (ll j = li; j <= ri; j++){
            int prev = last[j];
            last[j] = day;
            day++;

            if (prev >= 0) gaps.push_back(day-prev-2);
        }
    }

    vector<ll> s(q);
    for (ll i{}; i < q; i++){
        cin >> s[i];
    }

    sort(gaps.begin(), gaps.end());
    for (ll Q{}; Q < q; Q++){
        ll i = lower_bound(gaps.begin(), gaps.end(), s[Q]) - gaps.begin();
        cout << gaps.size() - i << " ";
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...