84分,第一个测试点WA
查看原帖
84分,第一个测试点WA
1069816
Tsuki091117楼主2023/9/15 17:09
#include<bits/stdc++.h>
using namespace std;
int n,m;
int a[1000010],c[1000010];
int fun(int x){
	int left,right,mid,r=-1;
	left=1;
	right=n;
	while(left<=right){
		mid=(left+right)/2;
		if(a[mid]==x&&a[mid-1]!=x){
			return mid;
		}
		if(x<=a[mid]){
			right=mid-1;
		}
		else if(x>a[mid]){
			left=mid+1; 
		}
	}
	return -1;
}
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>>c[i];
	} 
	for(int i=1;i<=m;i++){
		cout<<fun(c[i])<<" ";
	}
	return 0;
}
2023/9/15 17:09
加载中...