#include #define rep(i,n) for(int i=0;i>n>>m; vectorh(n),rev(n); rep(i,n){ cin>>h[i]; rev[h[i]-1]=i; } vector>G(n); rep(i,m){ int a,b; cin>>a>>b; a--;b--; G[a].push_back(b); G[b].push_back(a); } vectord1(n,-1e9),d2(n,-1e9); d1[0]=0; d2[n-1]=0; for(auto i:rev){ for(auto e:G[i]){ if(h[i]