#ERFEN002. 二分查找满足条件的数

二分查找满足条件的数

题目描述

在一个神秘的数字王国中,智慧的国王决定进行一场特别的竞赛,以测试他的子民的智慧。竞赛的规则如下:在一个有序不递减的数组中(数组中可能包含相等的数值),参赛者需要找到第一个大于或等于给定元素的位置。如果找不到这样的元素,他们必须宣布失败,并输出-1。

国王的魔法师提供了一个魔法数组,这个数组中的数值按照从小到大的顺序排列。数组中的每个数值代表了王国中不同的宝藏等级,参赛者需要找到对应宝藏的确切位置,如果找不到输出-1

输入格式

第一行,一个整数n,代表数组元素个数(n105n \le 10^5

第二行,n个整数,用空格隔开,代表数组的n个元素(11 \le 数组元素的值 108 \le 10^8

第三行,一个整数q,代表有要查询q个数(q105 q \le 10^5

第四行,q个整数,用空格隔开,代表查询的数(11 \le 要找的数 108 \le 10^8

输出格式

按题意输出位置或者-1。

6
1 2 2 2 6 6
3
5 8 2
5 -1 2