MLE
查看原帖
MLE
747611
GeorgeCHN楼主2025/2/6 10:39
#include<bits/stdc++.h>
using namespace std;
int a[1000002];
int f(int a[],int l,int r,int k){
	if(l==r){
		if(a[l]==k)return l;
		else return -1;
	}
	int mid=(l+r)/2;
	if (k<=a[mid])f(a,l,mid,k);
	else f(a,mid+1,r,k);
}
int main(){
	int n,m,k;
	cin>>n>>m;
	for (int i=1;i<=n;i++)scanf("%d",&a[i]);
	while (m--){
		cin>>k;
		cout<<f(a,1,n,k)<<" ";
	}
}

明明是1000000,1000000*4B=4MB

2025/2/6 10:39
加载中...