#include #include #include #include #include using namespace std; int main() { int N,M; cin >> N >> M; vectorA(N); for (int i = 0; i < N; i++)cin >> A[i]; vector>E(N); for (int i = 0; i < M; i++) { int u, v; cin >> u >> v; u--; v--; E[u].push_back(A[v]); E[v].push_back(A[u]); } bool flag = false; for (int i = 0; i < N; i++) { int b = A[i]; sort(E[i].begin(), E[i].end()); E[i].erase(unique(E[i].begin(),E[i].end()),E[i].end()); if (distance(E[i].begin(), lower_bound(E[i].begin(), E[i].end(), b)) >= 2 || distance(upper_bound(E[i].begin(), E[i].end(), b), E[i].end()) >= 2)flag = true; } cout << (flag ? "YES" : "NO") << endl; return 0; }