二分查找1.0

简介: **题目:有一段长度为n的序列,q次查找,每次查找输入一个值x,需要你判断序列中是否存在值等于x的元素

**题目:

有一段长度为n的序列,q次查找,每次查找输入一个值x,需要你判断序列中是否存在值等于x的元素,若存在,请输出Yes,否则输出No,保证序列中每一个元素都是唯一的。

输入:

13 2

2 5 8 10 15 25 35 45 50 60 70 80 90

10

18

输出:

Yes

No

分析这道题很简单:不过多介绍

源码:**

include

using namespace std;

int main(void)

{

int n,q;
cin>>n>>q;
int arr[n];
for(int i=0;i<n;i++)
{
cin>>arr[i];
}
for(int j=0;j<q;j++)
{
int as,a=0,b=n-1,md;
cin>>as;
while(as>arr[0]&&as<arr[n-1]&&b-a>=0)
    {
        md=arr[(a+b)/2];
if(as==md)
        {
            a=-1; 
cout<<"Yes"<<endl;
break;
        }else if(as>md)
        {
            a=(a+b)/2+1;
        }else if(as<md)
        {
            b=(a+b)/2-1;
        }
    }
if(a!=-1)
    {
cout<<"No"<<endl;
    }
}
return 0;

}

目录
相关文章
|
存储
RandomAccessFile实现文件分割、合并
RandomAccessFile实现文件分割、合并
286 0
|
5月前
|
人工智能 光互联 数据中心
横跨半世纪的光通讯巅峰盛会OFC落幕,阿里云在全球光通信顶会OFC2025上发表多个创新成果和报告
​2025年3月,全球光通讯领域最具标杆意义的年度盛会——OFC(光纤通信学术会议暨展览会)迎来其50周年里程碑,在美国加州旧金山盛大开幕。来自全球83个国家和地区,约17000名专家、学者、企业和政府人员齐聚美国,共同融入这场知识与思想的盛会。
|
11月前
|
SQL
简单练习Microsoft SQL Server MERGE同步两个表
【10月更文挑战第13天】本文介绍了在Microsoft SQL Server中使用`MERGE`语句同步两个表的步骤。首先创建源表`SourceTable`和目标表`TargetTable`并分别插入数据,然后通过`MERGE`语句根据ID匹配行,实现更新、插入和删除操作,最后验证同步结果。此方法可根据需求调整以适应不同场景。
438 1
|
10月前
|
Java 编译器 程序员
【c++】基础知识——快速入门c++
本文介绍了C++的基础知识,包括C++相对于C语言的新特性,如面向对象编程、引用、函数重载、模板库STL等。文章通过“Hello World”程序展示了C++的基本语法,并详细解释了命名空间、输入输出、缺省参数、函数重载、内联函数和空指针的概念。通过实例代码和运行结果,帮助读者快速掌握C++的核心知识点。
252 9
|
JSON 缓存 NoSQL
redis序列化数据时,如何包含clsss类型信息?
通过配置 `com.fasterxml.jackson.databind.ObjectMapper` 的 `enableDefaultTyping` 方法,可以使序列化后的 JSON 包含类信息。
150 2
|
XML API 网络安全
【安卓】在安卓中使用HTTP协议的最佳实践
【安卓】在安卓中使用HTTP协议的最佳实践
311 4
|
机器学习/深度学习 算法
【机器学习】解释对偶的概念及SVM中的对偶算法?(面试回答)
解释了对偶的概念,指出对偶性在优化问题中的重要性,尤其是在强对偶性成立时可以提供主问题的最优下界,并且详细阐述了支持向量机(SVM)中对偶算法的应用,包括如何将原始的最大间隔优化问题转换为对偶问题来求解。
312 2
|
JavaScript 前端开发
JavaScript基础&实战 JS中正则表达式的使用
这篇文章介绍了JavaScript中正则表达式的使用,包括正则表达式的创建、匹配模式、字符串匹配、拆分、搜索、匹配和替换等方法,并通过示例代码展示了如何应用这些技术。
JavaScript基础&实战 JS中正则表达式的使用
Vue3+Vite+Pinia+Naive后台管理系统搭建之三:vue-router 的安装和使用
Vue3+Vite+Pinia+Naive后台管理系统搭建之三:vue-router 的安装和使用
214 0
|
开发框架 JavaScript Java
推荐一个日历转换开源工具库,支持C#、Java、PHP等主流的语言
推荐一个日历转换开源工具库,支持C#、Java、PHP等主流的语言
280 0

热门文章

最新文章