听灌多
查看原帖
听灌多
739307
All_Failed_OI_Cici楼主2024/7/20 20:34

原题链接 求条:dev出了一堆黑体字,
之后是 [Error] ld returned 1 exit status 蒟蒻第一次写二分,感谢大佬们的指点

code

#include<bits/stdc++.h>
using namespace std;
int l,r;
const int N=1e9+10;
int a[N];
int n,m,mid,q;
bool b=false;
int main(){
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++) scanf("%d",&a[i]);
	for(int i=1;i<=m;i++){
		l=1,r=n;
		scanf("%d",q);
		b=false;
		while(l<=r){
			mid=(l+r)>>1;
			if(a[mid]<q) r=mid-1;
			else if(a[mid]>q) l=mid+1;
			else{
				printf("%d ",l-1);
				b=true;
				break;
			}
		}
		if(!b) puts("-1 ");
	}
	return 0;
}
2024/7/20 20:34
加载中...