为什么-1输出不了,大佬救命
查看原帖
为什么-1输出不了,大佬救命
1026187
lys_99楼主2024/5/21 20:13
#include<bits/stdc++.h>
using namespace std;
int a[100000009],n,m,q;
int find(int x){
	int l=1,r=n+1;
	while(l<r){
		int mid=l+(r-1)/2;
		if(a[mid]>=x){
			r=mid;
		}
		else l=mid+1;//多个相同数中找最小编号 
		/*
		if(a[mid]<=x)l=mid+1;
		else r=mid;
		 多个相同数中找最大编号 
		*/
	}
	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>>q;
		cout<<find(q)<<" ";
	}
	return 0;
}
2024/5/21 20:13
加载中...