5 条题解
-
0
Guest
-
0
二分模版题。
#include<bits/stdc++.h> using namespace std; const int N=1e7+5; int a[N],n,k; int bs(int l,int r,int x){ if(l>r) return -1; int mid=(l+r)>>1; if(a[mid]==x) return mid; else if(x>a[mid]) return bs(mid+1,r,x);//向右找 else return bs(l,mid-1,x);//向左找 } int main(){ cin>>n>>k; for(int i=1;i<=n;i++) cin>>a[i]; cout<<bs(1,n+1,k); }
信息
- ID
- 665
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 62
- 已通过
- 18
- 上传者