提交时间:2025-09-07 11:39:48
运行 ID: 346428
#include<bits/stdc++.h> using namespace std; int n,a[10086],x,cnt=-1,cnt1=-1,q; int fd(int x){ int l=1,r=n,mid; while(l<=r){ mid=(l+r)>>1; if(a[mid]>=x){ r=mid-1; } else{ l=mid+1; } } if(a[l]==x){ return l; } else{ return -1; } } int fx(int x){ int l=1,r=n,mid; while(l<=r){ mid=(l+r)>>1; if(a[mid]>x){ r=mid-1; } else{ l=mid+1; } } if(a[r]==x){ return r; } else{ return -1; } } int main(){ scanf("%d %d",&n,&q); for(int i=1;i<=n;i++){ scanf("%d",&a[i]); } sort(a+1,a+n+1); for(int i=1;i<=q;i++){ scanf("%d",&x); printf("%d %d",fd(x),fx(x)); cout<<endl; } return 0; }