a,b=map(int,input().split()) x=list(map(int,input().split())) z=sorted(list(set(x))) w=[set([]) for i in range(len(z))] W=[[] for i in range(len(z))] p={} d=[0 for i in range(a)] for i in range(len(z)): p[z[i]]=i s=0 for i in range(a): w[p[x[i]]].add(i) d[i]=p[x[i]] for i in range(len(w)): s+=len(w[i]) W[i]=s #print(x) #print(z) #print(p) #print("集団",w) #print(W) #print("どこの集団であるか",d) for i in range(b): c=list(map(int,input().split())) c[0]-=1;c[1]-=1 #print(d[c[0]],d[c[1]]) if abs(d[c[0]]-d[c[1]])==1: print(0) else: if len(w[d[c[0]]])>1: print(max(W[d[c[0]]]-W[d[c[1]]]-(len(w[d[c[0]]])),0)) else: print(max(W[d[c[0]]]-W[d[c[1]]]-1,0)) #print()