过样例了,但爆零了,感觉代码没问题呀,求大佬指点
查看原帖
过样例了,但爆零了,感觉代码没问题呀,求大佬指点
139334
拱垲楼主2023/9/28 10:05
#include <iostream>
#include <cstdio>
#include<algorithm>
#include<string>
#include<map>
using namespace std;

int num[100005];
int n,m,q;

int search(int l,int r)
{
	if(l==r)
		if(num[l]==q)
			return l;
		else
			return -1;
	int m=(l+r)/2;
	if(num[m]>=q)return search(l,m);
	else return search(m+1,r);
}



int main()
{
	cin>>n>>m;
	for(int i=1;i<=n;i++)
		scanf("%d",&num[i]);
	for(int i=1;i<=m;i++)
	{
		scanf("%d",&q);
		printf("%d ",search(1,n));
	}
    return 0;
}
2023/9/28 10:05
加载中...