C艹,样例都过不了···,蒟蒻求助
查看原帖
C艹,样例都过不了···,蒟蒻求助
776306
FengYuXinMing楼主2023/5/27 10:32
//来自洛谷P2249 【深基13.例1】查找
#include <bits/stdc++.h>
using namespace std;

const int maxn = 1e6 + 5;
int a[maxn],n,m;

int change(int s){//二分
	int left = 1, right = n, mid;
	while(left <= right){
		mid = (left+right)/2;
		if (a[mid] = s)
			right = mid - 1;
		else if (a[mid] < s)
			left = mid + 1;
	}
	if (a[mid] == s){
		return mid;
	}
	return -1;
}
int main() {
	cin>>n>>m;
	for (int i = 1; i <= n;i++) cin >> a[i];
	for (int i = 1;i <= m;i++){
		int q;
		cin >> q; 
		int ans = change(q);
		cout << ans << ' ';
	}
	return 0;
}
2023/5/27 10:32
加载中...