这个为什么会TLE啊,求帮忙!
#include<bits/stdc++.h>
using namespace std;
int n,m,a[1000005],b[100005],c[100005],ans=0,i;
int chen_zhe(int x){
int i,left=1,right=n+1;
int mid=(left+right)/2;
while(left<right){
if(a[mid]==x) return a[mid];
else if(a[mid]>x) right=mid-1;
else left=mid+1;
}
return -1;
}
int main(){
cin>>n>>m;
for(i=1;i<=n;i++)
cin>>a[i];
for(i=1;i<=m;i++){
cin>>b[i];
c[++ans]=chen_zhe(b[i]);
}
for(i=1;i<=ans;i++) cout<<c[i]<<" ";
return 0;
}