为啥爆零
查看原帖
为啥爆零
975630
woyaoAKIOI0924PTY楼主2024/7/14 20:49
#include<bits/stdc++.h>
using namespace std;
int n,a[10000005],x,q;
int find(int pos1,int pos2,int x)
{
	int lt=pos1-1,rt=pos2+1;
	while(lt+1<rt)
	{
		int mid=(lt+rt)/2;
		if(a[mid]==x)
			return mid;
		else if(a[mid]<x)
			lt=mid;
		else
			rt=mid;
	}
	return -1;
}
int main()
{
	cin>>n>>q;
	for(int i=1;i<=n;++i)
	{
		cin>>a[i];
	}
	while(q--)
	{
		cin>>x;
		cout<<find(1,n,x)<<" ";
	}
	return 0;
}
2024/7/14 20:49
加载中...