#include<bits/stdc++.h >
using namespace std;
deque < int > edge[1000005];
int h[1000005];
int main()
{
	int n,m;
    cin>>n>>m;
    for(int i = 1; i<=n; i++)
    	cin>>h[i];
	for(int i = 0; i<m; i++)
	{
		int u,v;
		cin>>u>>v;
		edge[u].push_back(v);
		edge[v].push_back(u);
	}
	int cnt=0;
	for(int i=1;i<=n;i++)
	{
		bool flag=true;
		for(int to=0;to<edge[i].size();to++)
		{
			if(h[i]==h[to])
			{
				flag=false;
				break;
			}
		}
		cnt+=flag;
	}
	cout<<cnt<<endl;
	return 0;
}