样例过了,但WA+TLE求助
查看原帖
样例过了,但WA+TLE求助
915921
DougNo1楼主2024/8/21 10:03

代码:

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int a[1000010];
int main(){
    int n,m;
    cin>>n>>m;
    for(int i=1;i<=n;i++) cin>>a[i];
    for(int i=1;i<=m;i++){
		int c,tmp=0;
    	cin>>c;
    	int l=1,r=n,mid=(l+r)/2;
    	while(l<r){
            if(a[mid]<c) l=mid+1;
            if(a[mid]>c) r=mid-1;
            if(a[mid]==c){
                while(a[mid-1]==a[mid]) mid--;
                tmp=1;
				cout<<mid<<" ";
				break;
            }
            mid=(l+r)/2;
		}
		if(tmp==0) cout<<-1<<" ";
	}
	return 0;
}

提交记录

2024/8/21 10:03
加载中...