二分笔记
2024-11-01 15:50:06
发布于:浙江
#include <bits/stdc++.h>
using namespace std;
int f(int a[],int n,int x){
int left=1,right=n,cnt=0;
int b=-1;
while(left<=right){
int mid = (left+right)/2;
cnt++;
if(a[mid]>x){
right = mid-1;
}
else if(a[mid]<x){
left=mid+1;
}
else{
b=mid;
break;
}
}
return cnt;
}
int a[1010],n=1000,x;
int main(){
for(int i=1;i<=1000;i++) a[i]=i;
cin>>x;
cout<<f(a,n,x);
return 0;
}
二分
给出一个1000以内数字 求最快要几次可以找到这个数
这里空空如也
有帮助,赞一个