#include #include #include #include #include #include #include using namespace std; typedef pair ii; const int Maxn = 1005; int d, n, m; bool days[Maxn]; vector seq[Maxn]; int res; int main() { scanf("%d %d %d", &d, &n, &m); for (int i = 0; i < n; i++) { int cur; scanf("%d", &cur); days[cur] = true; } for (int i = 0; i < m; i++) { int a, b; scanf("%d %d", &a, &b); seq[a].push_back(b); } priority_queue Q; int lst = -1; for (int i = 0; i <= d; i++) { for (int j = 0; j < seq[i].size(); j++) Q.push(seq[i][j]); if (days[i] && lst < i) { res++; lst = Q.top(); Q.pop(); } } printf("%d\n", res); return 0; }