Pagini recente » Cod sursa (job #2263884) | Cod sursa (job #1519463) | Cod sursa (job #236141) | Cod sursa (job #2178588) | Cod sursa (job #236789)
Cod sursa(job #236789)
var v:array[1..1000] of longint; {00}
n,m,i,k,mij,r,st,dr,x,c:longint;
f,g:text;
begin
assign(f,'cautbin.in');reset(f);
assign(g,'cautbin.out');rewrite(g);
read(f,n);
for i:=1 to n do read(f,v[i]);
read(f,m);
for k:=1 to m do
begin
read(f,c,x);
if c=0 then
begin
st:=1; dr:=n;
while st<=dr do
begin
mij:=st+(dr-st) div 2;
if x>v[mij] then st:=mij+1
else dr:=mij-1;
end;
if x=v[mij] then writeln(g,mij)
else writeln(g,-1);
end
else if c=1 then
begin
st:=1; dr:=n; r:=0;
repeat
mij:=st+(dr-st) div 2;
if x>=v[mij] then
begin
r:=mij;
st:=mij+1;
end
else dr:=mij-1;
until st>=dr;
writeln(g,r);
end
else
begin
st:=1; dr:=n; r:=0;
repeat
mij:=st+(dr-st) div 2;
if x<=v[mij] then
begin
r:=mij;
dr:=mij-1;
end
else st:=mij+1;
until st>=dr;
writeln(g,r);
end;
end;
close(f);
close(g);
end.