| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 1216891 | stdfloat | Exhibition (JOI19_ho_t2) | C++20 | 0 ms | 0 KiB | 
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
#define ff  first
#define ss  second
#define pii pair<int, int>
#define sz(v)	(int)(v).size()
#define all(v)	(v).begin(), (v).end()
int main() {
	ios::sync_with_stdio(false); cin.tie(nullptr);
	int n, m;
	cin >> n >> m;
	pii p[n];
	for (int i = 0; i < n; i++)
		cin >> p[i].ff >> p[i].ss;
	sort(p, p + n);
	vector<int> C(m);
	for (auto &i : C)
		cin >> i;
	sort(all(C));
	int mx = 0;
	for (int mk = 0; mk < 1 << n; mk++) {
		bool tr = true;
		int c = -1, pre = -1, cnt = 0;
		for (int i = 0; i < n; i++) {
			if (!(mk >> i & 1)) {
				cnt++;
				if (pre > p[i].ss) {
					tr = false; break;
				}
				pre = p[i].ss;
				c = lower_bound(c + 1 + all(C), p[i].ff) - C.begin();
				if (c == m ) {
					tr = false; break;
				}
			}
		}
		if (tr) mx = max(mx, cnt);
	}
	cout << mx;
}
