题目:P1571
测试点信息
代码(用的二分:
#include <bits/stdc++.h>
using namespace std;
int n, m;
int a[100001], b[100001];
int main(){
cin >> n >> m;
if (n == 0 || m == 0)
return 0;
for (int i = 0; i < n; i++) cin >> a[i];
for (int i = 0; i < m; i++) cin >> b[i];
sort(b, b + m);
for (int i = 0; i < n; i++){
int l = 0, r = n - 1;
while(l <= r){
int mid = (l + r) / 2;
if (b[mid] == a[i]){
cout << a[i] << " ";
break;
}
if (b[mid] < a[i])
l = mid + 1;
else if (b[mid] > a[i])
r = mid - 1;
}
}
}
求助QAQ