P2249 查找 求条
查看原帖
P2249 查找 求条
1044318
ZhangShuai2012楼主2024/11/24 11:26

用的二分,结果0分,求调

原题

#include <bits/stdc++.h>
using namespace std;
int main(){
	int n,m,a[100005];
	cin>>n>>m;
	for(int i=1;i<=n;i++) cin>>a[i];
	while(m--){
		int l=1,r=n,mid,t,ans;
		cin>>t;
		while(l<=r){
			mid = (l+r)/2;
			if(t<=a[mid]){
				r=mid-1;
				ans=mid;
			}
			else  l=mid+1;
		}
		if(a[ans]==t) cout<<ans<<' ';
		else cout<<-1;
	} 
	
	return 0;
} 
2024/11/24 11:26
加载中...