#include <iostream>
using namespace std;
int N, M;
int Arr[2001];
bool DP[2001][2001];
void solve(){
for(int i=1; i<=N; i++){
DP[i][i] = true;
}
for(int i=1; i<N; i++){
if(Arr[i] == Arr[i+1]){
DP[i][i+1] = true;
}
}
for(int i=2; i<N; i++){
for(int j=1; j<=N-i; j++){
if(Arr[j] == Arr[j+i] && DP[j+1][j+i-1] == true){
DP[j][j+i] = true;
}
}
}
return;
}
int main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin >> N;
for(int i=1; i<=N; i++){
cin >> Arr[i];
}
solve();
cin >> M;
int s, e;
for(int i=0; i<M; i++){
cin >> s >> e;
cout << DP[s][e] ? 1 : 0;
cout << "\n";
}
return 0;
}