#include #include #include #include #include using namespace std; int main() { int N, Q; cin >> N >> Q; vector A(N); for (int &a: A) { cin >> a; a = -a; } vector b = A; sort(b.begin(), b.end()); map> mp; for (int i = 0; i < N; i++) { mp[b[i]].push_back(i); } while (Q--) { int x, y; cin>> x>> y; x--; y--; int a1 = A[x], a2 = A[y]; int frm = mp[a1].back(), to = mp[a2][0]; if (frm >= to) cout << 0 << endl; else cout << to - frm - 1 << endl; } return 0; }