救救孩子吧,这二分写得有问题吗?
查看原帖
救救孩子吧,这二分写得有问题吗?
1189413
PURE_LOVE楼主2024/3/19 14:17
#include<bits/stdc++.h>
using namespace std;
int n = 0, m = 0; 
int mark = 0;
int chazhao(int a,vector<int>arr,int left,int right)
{
	int mid = (left + right) / 2;
	if (left == right)
	{
		if (arr[left]==a)
			return left+1;
		else
			return -1;
	}
	else if(arr[mid] >= a)
	{
		return chazhao(a, arr, left, mid);
	}
	else
	{
		return chazhao(a, arr, mid+1, right);
	}
}
int main()
{
	scanf("%d%d", &n, &m);
	vector<int>arr(n);
	vector<int>brr(m);
	for (int i = 0; i < n; i++)
	{
		scanf("%d", &arr[i]);
	}
	for (int i = 0; i < m; i++)
	{
		scanf("%d", &brr[i]);
		int temp=chazhao(brr[i], arr, 0, n - 1);
		printf("%d ", temp);
	}
}```c
2024/3/19 14:17
加载中...