#include <stdio.h>
int n,v[100];
int cerinta0(int val)
{
int rez=-1;
for (int i=1;i<=n && v[i]<=val;++i)
if (v[i]==val)
rez=i;
return rez;
}
int cerinta1(int val)
{
int i;
for (i=1;i<=n && v[i]<=val;++i);
return i-1;
}
int cerinta2(int val)
{
int i;
for (i=1;i<=n && v[i]<val;++i);
return i;
}
int main()
{
int i,m,val,tip;
FILE *f =fopen("cautbin.in","r");
FILE *g =fopen("cautbin.out","w");
fscanf(f,"%d",&n);
for (i=1;i<=n;++i)
fscanf(f,"%d",&v[i]);
fscanf(f,"%d",&m);
while (m--)
{
fscanf(f,"%d %d",&tip,&val);
if (tip==0)
fprintf(g,"%d\n",cerinta0(val));
if (tip==1)
fprintf(g,"%d\n",cerinta1(val));
if (tip==2)
fprintf(g,"%d\n",cerinta2(val));
}
}