题解
2025-08-18 14:44:06
发布于:甘肃
2阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
int a[100001];
int main(){
int n;cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
int m;cin>>m;
while(m--){
int b;cin>>b;
int ans=-1,l=1,r=n,mid;
while(l<=r){
mid=(l+r)/2;
if(a[mid]==b){
ans=mid;
r=mid-1;
}
else if(a[mid]<b) l=mid+1;
else r=mid-1;
}
cout<<ans<<" ";
ans=-1,l=1,r=n;
while(l<=r){
mid=(l+r)/2;
if(a[mid]==b){
ans=mid;
l=mid+1;
}
else if(a[mid]<b) l=mid+1;
else r=mid-1;
}
cout<<ans<<" ";
ans=-1,l=1,r=n;
while(l<=r){
mid=(l+r)/2;
if(a[mid]>b){
ans=mid;
r=mid-1;
}
else if(a[mid]<=b) l=mid+1;
}
cout<<ans<<"\n";
}
return 0;
}
这里空空如也
有帮助,赞一个