#include <bits/stdc++.h>
using ll  = long long;
using namespace std;
 ll n,q;
const int N = 2e5+5;
vector<ll>a(N,0);
ll solve1(ll x)//找第一个大于等于l的数
{
    ll mid ;
    ll l =  1;
    ll r = n;
    while(l<r)
    {
        mid = (l+r)>>1;
        if(a[mid]>=x) r = mid;//尽量往左找
        else l = mid + 1;
    }
    return l;
}
ll solve2(ll x)//找最后一个一个小于等于r的数
{
    ll mid ;
    ll l =  1;
    ll r = n;
    while(l<r)
    {
        mid = (l+r+1)>>1;//尽量往右找
        if(a[mid]<=x) l = mid;
        else r = mid - 1;
    }
    return l;
}
 
int main()
{
    cin>>n>>q;
    for(ll i = 1;i <= n;i++)cin>>a[i];
    sort(a.begin()+1,a.begin()+n+1);
    while(q--)
    {
        ll l,r;
        cin>>l>>r;
        cout<<solve2(r)-solve1(l)+1<<endl;
    }
    return 0;
}