import sys,collections from operator import itemgetter sys.setrecursionlimit(10**7) def Is(): return [int(x) for x in sys.stdin.readline().split()] def Ss(): return sys.stdin.readline().split() def I(): return int(sys.stdin.readline()) def S(): return input() n,m = Is() As = [0] + Is() g = [[] for i in range(n+1)] for i in range(m): u,v = Is() g[u].append(v) g[v].append(u) for i,a in enumerate(As): if i == 0 or i == n: continue if len(g[i]) >= 2: big,small = [],[] for e in g[i]: if As[e] > a: big.append(As[e]) if As[e] < a: small.append(As[e]) if len(set(big)) >= 2 or len(set(small)) >= 2: print("YES") exit() print("NO")