//在一个长度为10的升序数组里面找到未知数x,时间复杂度为O(logn),使用二分查找。
//输入 7,14,18,19,20,23,24,26,28,30
//难点在于解决输入数据之间的,scanf语句可以加一个,解决
//cin需要借助字符串
include[HTML_REMOVED]
using namespace std;
int find(int a[],int x,int l,int r){
if(r>=l){
int mid=(l+r)/2;
if(x==a[mid]){
return mid;
}
else if(x>a[mid]){
return find(a,x,mid+1,r);
}
else{
return find(a,x,l,mid-1);
}
}
return -1;
}
int main(){
int a [9];
for(int i=0;i<=9;i++){
scanf(“%d,”, &a[i]);
}
int x;
cin>>x;
int ans=find(a,x,0,9);
if(ans!=-1){
cout<<ans;
}else{
cout<<”No Found!”;
}
}
/*
include[HTML_REMOVED]
include [HTML_REMOVED]
using namespace std;
int find(int a[],int x,int l,int r){
if(r>=l){
int mid=(l+r)/2;
if(x==a[mid]){
return mid;
}
else if(x>a[mid]){
return find(a,x,mid+1,r);
}
else{
return find(a,x,l,mid-1);
}
}
return -1;
}
int main(){
int a [9];
string input;
getline(cin, input); // 读取整行输入
stringstream ss(input);// 使用 stringstream 来解析输入数据
char ch;
for(int i=0;i<=9;i++){
ss >> a[i]; // 逐个读取整数
ss >> ch; // 读取逗号
}
int x;
cin>>x;
int ans=find(a,x,0,9);
if(ans!=-1){
cout<<ans;
}else{
cout<<”No Found!”;
}
}
}*/