题解
2025-07-16 16:53:16
发布于:广东
0阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
int n,a[101],x;
int lower_bound(int a[],int n,int x){
int left=1,right=n,pos=-1,mid;
while(left<=right){
mid=(left+right)/2;
if(a[mid]>=x){
pos=mid;
right=mid-1;
}else left=mid+1;
}
return pos;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
cin>>x;
cout<<lower_bound(a,n,x);
return 0;
}
或
#include<bits/stdc++.h>
using namespace std;
int n,a[101],x;
int main(){
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
cin>>x;
for(int i=1;i<=n;i++){
if(a[i]>=x){
cout<<i;
return 0;
}
}
return 0;
}
这里空空如也
有帮助,赞一个