Pagini recente » Cod sursa (job #1332816) | Cod sursa (job #1936056) | Cod sursa (job #2619554) | Cod sursa (job #2077217) | Cod sursa (job #2628181)
from bisect import bisect_left, bisect_right
with open("cautbin.in", "r") as f, open("cautbin.out", "w") as g:
n, a, m = int(next(f)), list(int(i) for i in next(f).split()), int(next(f))
bl, br = bisect_left, bisect_right
for i in range(m):
o, x = (int(i) for i in next(f).split())
if o == 0:
poz = br(a, x)
g.write(str(poz if poz and a[poz - 1] == x else -1))
elif o == 1:
g.write(str(br(a, x)))
else:
g.write(str(bl(a, x) + 1))
g.write('\n')