Submission #1180019

#TimeUsernameProblemLanguageResultExecution timeMemory
1180019nekolieExhibition (JOI19_ho_t2)C++20
100 / 100
39 ms2076 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0); cout.tie(0);
    int n,m; cin >> n >> m;
    pair<int,int> risa[n];
    int lim[m], dp[n+1]; dp[n] = 0;
    for (int i = 0; i < n; i++)
        cin >> risa[i].second >> risa[i].first;
    for (int i = 0; i < m; i++)
        cin >> lim[i];
    sort(risa,risa+n), sort(lim,lim+m);
    for (int i = n-1; i >= 0; i--) {
        int l = 0, r = m-1;
        while (l < r) {
            int s = (l+r)/2;
            if (risa[i].second <= lim[s])
                r = s;
            else
                l = s+1;
        }
        dp[i] = dp[i+1] + ((risa[i].second <= lim[l] && m-l > dp[i+1]) ? 1 : 0);
    }
    cout << dp[0] << endl;
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...