感觉自己写的就是二分然鹅MLE了……求助
查看原帖
感觉自己写的就是二分然鹅MLE了……求助
66097
tjhdyhj楼主2021/8/11 20:09
#include <iostream>
using namespace std;
int N,M,n[1000005],m,num;
void jian (int now)
{
	if (n[now]!=m)
	    num=now+1;
    else
        jian(now-1);
}
void search (int l,int r)
{
	int mid;
	if (l==r&&n[mid]!=m)
	    return ;
	mid=(l+r)/2;
	if (n[mid]==m)
	    jian(mid-1);
	if (n[mid]<m)
	    search(mid+1,r);
	else if (n[mid]>m)
	    search(l,mid-1);
}
int main ()
{
	int i,j;
	cin>>N>>M;
	for (i=1;i<=N;i++)
		cin>>n[i];
	for (i=1;i<=M;i++)
	{
		cin>>m;
		num=-1;
		search(1,N);
		cout<<num<<" ";
	}
	return 0;
}

除了#2WA全部MLE

2021/8/11 20:09
加载中...