Pagini recente » Cod sursa (job #798391) | Cod sursa (job #504924) | Cod sursa (job #2044230) | Cod sursa (job #1884859) | Cod sursa (job #1072011)
var n,i,j,m,temp,nr,poz,left,right:longint;
a:array[1..100001] of longint;
begin
assign(input,'cautbin.in');
assign(output,'cautbin.out');
reset(input);
rewrite(output);
readln(n);
for i:=1 to n do
read(a[i]);
readln(m);
for i:=1 to m do
begin
left:=1; right:=n; poz:=(left+right) div 2;
read(temp); readln(nr);
if temp=0 then begin
while left+1<>right do
begin
if a[poz]>nr then right:=poz
else left:=poz;
poz:=(left+right) div 2;
end;
if a[poz]=nr then writeln(poz)
else writeln('-1');
end;
if temp=1 then begin
while left+1<>right do
begin
if a[poz]>nr then right:=poz
else left:=poz;
poz:=(left+right) div 2;
end;
writeln(poz);
end;
if temp=2 then begin
while left+1<right do
begin
if a[poz]>nr then left:=poz
else right:=poz;
poz:=(left+right) div 2;
end;
writeln(poz);
end;
end;
close(input);
close(output);
{Si totusi este trist in lume.}
end.