#include <bits/stdc++.h>
#define rep(i, a, b) for (int i = a; i < (b); ++i)
#define per(i, a, b) for (int i = (int)(b) - 1; i >= (a); --i)
#define all(x) begin(x), end(x)
#define sz(x) (int)(x).size()
using namespace std;
using ll = long long;
using pii = pair<int, int>;
using vi = vector<int>;
using vii = vector<pii>;
using vb = vector<bool>;
using vl = vector<ll>;
int main() {
cin.tie(0)->sync_with_stdio(0);
int n, m;
cin >> n >> m;
vii a(n);
vi b(m);
rep(i, 0, n) cin >> a[i].first >> a[i].second;
rep(i, 0, m) cin >> b[i];
sort(all(a), [&](pii lhs, pii rhs) {
if (lhs.second != rhs.second) return lhs.second < rhs.second;
return lhs.first < rhs.first;
});
sort(all(b));
int ans = 0;
while (not a.empty() && not b.empty()) {
if (b.back() >= a.back().first) {
ans++;
a.pop_back(), b.pop_back();
} else {
a.pop_back();
}
}
cout << ans << '\n';
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |