#include using namespace std; typedef struct lnod { int nod; lnod *next; }*nod; int i,j,d,n,x,y,m,dp[1005]; bool a[1005]; nod lda[1005]; void add(int x,nod &y) { nod p=new lnod; p->nod=x; p->next=y; y=p; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cin>>d>>n>>m; for(i=1;i<=n;++i) cin>>x,a[x]=1; for(i=1;i<=m;++i) cin>>x>>y,add(y,lda[x]); for(i=1;i<=d;++i) dp[i]=2e9+69; for(i=0;i<=d;++i) { if(!a[i+1]) dp[i+1]=min(dp[i+1],dp[i]); for(nod p=lda[i+1];p;p=p->next) dp[p->nod]=min(dp[p->nod],dp[i]+1); } cout<