#include<bits/stdc++.h>
using namespace std;
int k,n,m,b[1005],u,v,ans;
bool pa[1005];
vector <int> p[1005];
void dfs(int x){
b[x]++;
for(int i=0;i<p[x].size();i++){
dfs(p[x][i]);
}
return;
}
int main(){
cin>>k>>n>>m;
for(int i=1;i<=k;i++){
cin>>v;
pa[v]=true;
}
for(int i=1;i<=m;i++){
cin>>u>>v;
p[u].push_back(v);
}
for(int i=1;i<=n;i++){
if(pa[i]){
dfs(i);
}
}
for(int i=1;i<=n;i++){
if(b[i]==k){
ans++;
}
}
cout<<ans;
system("pause");
return 0;
}