#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
int max(int a, int b) { return a > b ? a : b; }
int main(void){
    int n,m,i,j,k,ans=0;
    int a,b,c[100001],h[100001],flag[100001],group[100001][100001];
    scanf("%d %d\n",&n,&m);
    for(i=0; i<n; i++){
        scanf("%d ",&h[i]);
        flag[i]=0;
    }for(i=0; i<m; i++){
        scanf("%d %d\n",&a,&b);
        flag[a]=max(flag[a],h[b]);
        flag[b]=max(flag[b],h[a]);
    }
    for(i=1; i<=n; i++){
        if(h[i]>flag[i])ans++;
    }
    printf("%d",ans);
    return 0;
}