using namespace std; #include #include #define Nmax 1001 int v[Nmax], endL[Nmax]; bool used[Nmax]; int main() { int i, j, k, d, n, m, a, b, nrMin, endMax; cin >> d >> n >> m; for (i = 0; i < n; ++i) cin >> v[i]; sort(v, v + n); for (i = 0; i < m; ++i) { cin >> a >> b; if (b > endL[a]) endL[a] = b; } for (nrMin = 0, i = 0; i < n; ++i) if(used[i] == false) { for (endMax = 0, j = v[i]; j >= 1; --j) if (endL[j] > endL[endMax]) endMax = j; for (k = i; k < n && v[k] <= endL[endMax]; ++k) used[k] = true; endL[endMax] = 0; ++nrMin; } cout << nrMin << '\n'; return 0; }