#include<iostream>

using namespace std;


typedef struct{
	int i, X, Y, l, sol=0;
}Pereche;

int main()
{
	int N, D, M;
	int abse[1000];
	Pereche perechi[1010];
	cin>>D>>N>>M;
	int i;
	for(i=0; i<N; i++)
		cin>>abse[i];
	for(i=0; i<M; i++){
		cin>>perechi[i].X>>perechi[i].Y;
		perechi[i].i=i;
		perechi[i].l = perechi[i].Y-perechi[i].X;
	}
	int j;
	for(i=0; i<N; i++)
	{
		Pereche maxp;
		int maxi=-1;
		for(j=0; j<M; j++)
		{
			if(perechi[j].X<=abse[i] && abse[i]<=perechi[j].Y && (maxi==-1 || perechi[maxi].l<perechi[j].l))
			{
				maxi=j;
			}

		}
		perechi[maxi].sol=1;


	}
	int sol=0;
	for(i=0; i<M; i++)
		sol+=perechi[i].sol;
	cout<<sol;
	return 0;
}