五个WA给我干蒙了
查看原帖
五个WA给我干蒙了
842569
YJJ_HHH楼主2025/1/3 14:06
#include <bits/stdc++.h> 

using namespace std;

int arry[1000010]={-1}; // 存n
int j=1;

int chazhao(int arry_[],int len,int result){
	int left = 1;
	int right = len;
	while(left <= right){
		int mid = left + (right - left)/2;
		if(arry_[mid]>result){
			right = mid -1;
		}else if(arry_[mid]<result){
			left = mid+1;
		}else {
			return mid;
		}
	}
	return -1;
}
int main(){
	int n,m,result;  // n是多少个数字,m是查询数字 
	cin >> n >> m;
	for(int i=0;i<n;i++){
		cin >> arry[j];
		if(arry[j]!=arry[j-1]){
			j++;
		}
	}
	for(int i=0;i<m;i++){
		cin >> result;
		cout << chazhao(arry,j,result)<<' ';
	}
	return 0;
}
2025/1/3 14:06
加载中...