Why??
查看原帖
Why??
1371338
lce11451410086楼主2025/1/5 07:51
#include<bits/stdc++.h>
using namespace std;
int a[5000000];
int find(int x,int l,int r){
	while(l<=r){
		int mid=(l+r)/2;
		if(x==a[mid]) return mid;
		if(x>a[mid]) l=mid+1;
		else r=mid-1;
	}
	return -1;
}
int main(){
	int n,m;
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++){
		scanf("%d",&a[i]);
	} 
	sort(a+1,a+n+1);
	while(m--){
		int x;
		scanf("%d",&x);
		printf("%d ",find(x,1,n));
	}
	return 0;
}
2025/1/5 07:51
加载中...