二分10分求助
查看原帖
二分10分求助
758125
xiaobai0123楼主2022/11/25 13:16
#include <bits/stdc++.h>
using namespace std;
int n,m,a[10000],b[10000];
bool search(int n){
    int l=1,r=m,mid;
    mid=(l+r)/2;
    while(l<r){
        mid=(l+r)/2;
        if(b[mid]==n)return true;
        else if(b[mid]<n){
            l=mid+1;
        }else{
            r=mid-1;
        }
    }
    return false;
}
int main(){
    cin>>n>>m;
    for(int i=1;i<=n;i++)cin>>a[i];
    sort(a+1,a+n+1);
    for(int i=1;i<=m;i++)cin>>b[i];
    sort(b+1,b+m+1);
    for(int i=1;i<=n;i++){
        if(search(a[i])){
            cout<<a[i]<<' ';
        }
    }
    cout<<endl;
    
    return 0;
}
2022/11/25 13:16
加载中...