#include<bits/stdc++.h>
using namespace std;
int main(){
int n,k,i,j,a[10000]={0};
cin>>n>>k;
for(i=1;i<=n;i++)cin>>a[i];
int left=1;
int right=n;
while(left<=right){
int t=(right+left)/2;//计算中间位置
if(a[t]==k){
cout<<t;//找到目标,返回下标
break;
}
else if(k>a[t])
left=t+1;//目标在右半部分
else
right=t-1;//目标在左半部分
}
if(left>right){cout<<-1;}
return 0;
}
( ) |