AR. 【入门】二分查找满足条件的数

    传统题 1000ms 128MiB

【入门】二分查找满足条件的数

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

请在一个有序不递减的数组中(数组中的值有相等的值),采用二分查找,找到第 11 个大于或等于元素 xx 的位置,如果不存在,请输出 1-1

请注意:本题要求出 qqxx,每个 xx 在数组找到第 11 个大于或等于 xx 的元素的位置。

例如有 66 个数,分别是 1,2,2,2,6,61,2,2,2,6,6。如果依次查询 5,8,25,8,2,第一个大于或等于它们的位置分别是 5,1,25,-1,2

输入格式

第一行包含一个整数 nn,表示数组元素个数。

第二行包含 nn 个整数,表示数组的 nn 个元素,整数之间用空格分隔。

第三行包含一个整数 qq,表示询问个数。

第四行包含 qq 个整数,表示要查询的数,整数之间用空格分隔。

输出格式

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

样例

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

数据范围与提示

  • 1n1051 \le n \le 10^5
  • 1q1051 \le q \le 10^5
  • 11 \le 数组元素的值 108\le 10^8
  • 11 \le 要查询的数 108\le 10^8

来源

二分 分治

禅城区中小学生人工智能素养复赛练习

未认领
状态
已结束
题目
50
开始时间
2026-6-7 0:00
截止时间
2026-6-19 23:59
可延期
24 小时