#include <bits/stdc++.h>
using namespace std; 
#define fastio ios_base::sync_with_stdio(false) ; cin.tie(NULL); cout.tie(NULL)

const int N = 3e4+5 , Q = 2e5+5; 
int n , ft[N] , a[N];
pair<int,int> b[N] ;  
int ans[Q] ;
int lsO(int x ){
    return (x&(-x)); 
}
int sum(int x){
    int s = 0 ; 
    for( ; x > 0 ; x -= lsO(x)) s+= ft[x]; 
    return s ; 
}
void update(int x  ){
    for( ; x <= n ; x += lsO(x)  )ft[x] ++ ; 
}

int main(){
// fastio ; 
// cin >> n ;  
scanf("%d",&n); 
for(int i = 1 ; i <= n ; i++ ){
    scanf("%d",a+i) ;
    b[i] = {a[i],i}; 
}
int q , l , r , k ; 
// cin >> q; 
scanf("%d",&q); 
vector<vector<int>> queries ; 
for(int i = 0 ; i < q ; i++ ){
    // cin >> l >> r >> k ;
    scanf("%d%d%d",&l,&r,&k);  
    queries.push_back( {k,l,r,i}); 
}

sort(queries.begin(),queries.end()); 
sort(b+1,b+n+1) ; 
int j = n ; 
for(int i = q-1 ; i >= 0 ; i-- ){   
    while( j >= 1 && b[j].first > queries[i][0]){
        update(b[j].second) ;
        j--;  
    }ans[queries[i][3]] = sum(queries[i][2])-sum(queries[i][1]-1)   ; 
}for(int i = 0 ; i < q ; i++ ){
    //cout << ans[i]<<endl;
    printf("%d\n",ans[i]); 
}
}

