#include <iostream>
#include <vector>

using namespace std;

vector <int> frecv[1005];

bool sick[1005];

int dp[1005];

int main()
{
    int n, d, m;
    cin >> n >> d >> m;

    int x;
    while (d --) {
        cin >> x;
        sick[x] = true;
    }

    int a, b;
    while (m --) {
        cin >> a >> b;
        frecv[a].push_back(b);
    }

    for (int i = n; i; -- i) {
        if (!sick[i])
            dp[i] = dp[i + 1];
        else
            dp[i] = 10005;

        for (auto it: frecv[i])
            if (dp[it + 1] + 1 < dp[i])
                dp[i] = dp[it + 1] + 1;
    }

    cout << dp[1] << '\n';
    return 0;
}