提交时间:2026-03-29 16:33:44

运行 ID: 15731

#include<bits/stdc++.h> using namespace std; int n,q,a[100010],b[100010]; int main(){ cin>>n>>q; for(int i=0;i<n;i++){ cin>>a[i]; } for(int i=0;i<q;i++){ cin>>b[i]; } for(int i=0;i<q;i++){ int key=b[i],l=0,r=n-1,res_l,res_r; while(l<=r){ int mid=l+(r-l)/2; if(a[mid]>=key){ r=mid-1; } else{ l=mid+1; } } if(l<n&&a[l]==key){ res_l=l+1; } else{ res_l=-1; } l=0,r=n-1; while(l<=r){ int mid=l+(r-l)/2; if(a[mid]>key){ r=mid-1; } else{ l=mid+1; } } if(r>=0&&a[r]==key){ res_r=r+1; } else{ res_r=-1; } printf("%d %d\n",res_l,res_r); } return 0; }