0分,2个超时,样例正确,求大佬帮助
查看原帖
0分,2个超时,样例正确,求大佬帮助
1050441
noraevergreen楼主2024/7/15 18:30

求大佬帮助

#include<bits/stdc++.h>
using namespace std;
const int N=1e6+50;
int n;
int a[N];
int x;

int bs(int l,int r,int x) {
	int mid;
	while(l<=r) {
		mid=(l+r)/2;
		if(a[mid]>=x) r=mid-1;
		else l=mid+1;
	}
	if(a[l]==x) return l;
	else return -1;
}
int main() {
	cin>>n>>x;
	for(int i=1; i<=n; i++)
		cin>>a[i];

	while(x--) {
		cin>>x;
		cout<<bs(1,n,x)<<" ";
	}
}

2024/7/15 18:30
加载中...