20pts 求大佬指点
查看原帖
20pts 求大佬指点
959906
dhy1212楼主2024/6/10 14:23
#include<bits/stdc++.h>
using namespace std;

int main() {
	int n, m;
	cin >> n >> m;
	long long satia[n + 100] = {0}, sca[m + 100] = {0};
	for (int i = 1; i <= n; i++) {
		cin >> satia[i];
	}
	for (int i = 1; i <= m; i++) {
		cin >> sca[i];
	}
	sort(satia + 1, satia + n + 1);
	sort(sca + 1, sca + m + 1);
	for (int i = 1; i <= m; i++) {
		int t = sca[i];
		int l = 1, r = n;
		while (l <= r) {
			int mid = (l + r) / 2;
			if (satia[mid] < t) {
				l = mid + 1;
			} else if (satia[mid] > t) {
				r = mid - 1;
			} else {
				cout << satia[mid] << ' ';
				break;
			}
		}
	}
	return 0;
}
2024/6/10 14:23
加载中...