样例最后的-1输不出,悬关
查看原帖
样例最后的-1输不出,悬关
1252442
lucy2012楼主2024/3/18 19:27
#include<bits/stdc++.h>
using namespace std;
int n,m,a[1000010],num;
int find(int x){
	int r=n+1,l=1;
	while(l<r){
		int mid=l+(r-1)/2;
		if(a[mid]>=x)
		    r=mid;
		else
		    l=mid+1;
	}
	if(a[l]==x)
	   return l;
	else
	   return -1;
}
int main(){
    cin>>n>>m;
    for(int i=1;i<=n;i++)
		cin>>a[i];
	for(int i=1;i<=m;i++){
		cin>>num;
		cout<<find(num)<<' ';
	}
	return 0;
}	

2024/3/18 19:27
加载中...