#include <cstdio>
#include <algorithm>
#include <utility>
using namespace std;
pair <int, int> a[1004];
int d,n,m,i,p,u,nr,Max,b[1004];
int main()
{
    scanf ("%d %d %d", &d, &n, &m);
    for (i=1;i<=n;i++)
        scanf ("%d", &b[i]);
    sort (b+1,b+n+1);
    for (i=1;i<=m;i++)
        scanf ("%d %d", &a[i].first, &a[i].second);
    sort (a+1,a+n+1);
    a[1].first=a[1].first;
    a[1].second=a[1].second;
    nr=1;
    for (i=2;i<=m;i++)
    {
        if (a[i].second>a[nr].second)
        {
            a[++nr].first=a[i].first;
            a[nr].second=a[i].second;
        }
    }
    m=nr;
    p=1;
    u=1;
    nr=0;
    Max=0;
    while (p<=n)
    {
        while (u<=m)
        {
            if (a[u].first>b[p])
                break;
            else
                Max=a[u].second;
            u++;
        }
        while (p<=n)
        {
            if (b[p]>Max)
                break;
            p++;
        }
        nr++;
    }
    printf ("%d\n", nr);
    return 0;
}