#include <bits/stdc++.h>
#define MAXN 100001
using namespace std;
int v[MAXN], n;
int main()
{
freopen("cautbin.in", "r", stdin);
freopen("cautbin.out", "w", stdout);
int step, answer, m, c, x, lg, n, i;
scanf("%d", &n);
for(i=1; i<=n; ++i)
scanf("%d", &v[i]);
lg = 1;
while((lg << 1) <= n) lg <<= 1;
scanf("%d", &m);
while(m--)
{
answer = 0;
scanf("%d%d", &c, &x);
if(c == 0 || c == 1) {
for(step = lg; step >= 1; step >>= 1)
if(answer + step <= n && v[answer + step] <= x)
answer += step;
if(c == 0) {
if(v[answer] == x) printf("%d\n", answer);
else printf("-1\n");
}
else printf("%d\n", answer);
continue;
}
for(step = lg; step >= 1; step >>= 1)
if(answer + step <= n && v[answer + step] < x)
answer += step;
printf("%d\n", answer + 1);
}
return 0;
}