#P0384. 【模板】二分函数

【模板】二分函数

本题为二分函数模板练习题,可练习使用 lower_bound()lower\_bound()upper_bound()upper\_bound() 两个实用函数。

当然了也可练习手写函数实现😎。

题目描述

给定一个正整数 nn 和 含有 nn 个单调不减的元素的数组 aa

进行 qq 次询问, 每次给定一个目标值 xx,查询返回 >=x>= x 的第一个位置和 >x>x 的第一个位置。

注:本题关于下标位置的编号从 11 开始记录。

输入格式

第一行输入一个正整数 nn,代表数组大小。

第二行输入 nn 个正整数, 为单调不减的数组 aa 的元素。

第三行输入一个正整数 qq,代表询问次数。

接下来 qq 行,每行一个正整数 xx,代表要被询问的目标值。

输出格式

输出 qq 行答案, 每行两个正整数,为 >=x>= x 的第一个位置和 >x>x 的第一个位置。

样例

10
1 1 2 2 2 2 3 3 4 5
2
2
5
3 7
10 11

数据范围与约定

对于 100%100\% 的数据:

1n1061\leq n \leq 10^6

$1\leq a_1 \leq a_2 \leq \dots \leq a_{n-1} \leq a_n \leq 10^9$

1q1061\leq q \leq 10^6

1x1091\leq x \leq 10^9