第一个点莫名MLE求助,其他点都过了
查看原帖
第一个点莫名MLE求助,其他点都过了
733980
LxSmill楼主2023/9/11 22:12
#include<bits/stdc++.h>
using namespace std;
const int N=1000010;
int n,m,t,a[N];
int query(int x,int l,int r)
{ 
    if(l==r&&a[l]!=x) return -1;
    int b=(l+r)/2;
    if(a[b]>x) return query(x,l,b);
    if(a[b]<x) return query(x,b+1,r);
    if(a[b]==x)
    {
        if(a[b-1]!=x) return b;
        else return query(x,l,b);
    }
}
int main()
{
    ios::sync_with_stdio(false);
    cin>>n>>m;
    for(int i=1;i<=n;i++) cin>>a[i];
    for(int i=1;i<=m;i++) cin>>t,cout<<query(t,1,n)<<" ";
    cout<<endl;
    return 0;
}
2023/9/11 22:12
加载中...