20求助
查看原帖
20求助
980732
Main_Void_楼主2024/4/6 17:41
#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std ;
const int N = 1e6 + 10 ;
typedef long long ll ;
ll arr[N] , n , m ,q , b[N] , k;
int main()
{
    scanf("%lld%lld" , &n,&m) ;
    for( ll i = 0 ; i < n ; i++)
    scanf("%lld" , &arr[i]);
    
    sort(arr , arr + n) ;
    
    for( ll i = 0 ; i < m ; i++)
    {
        scanf( "%lld" , &q) ;
        ll l , r ;
        l = 0 , r = n - 1;
        
        while( l < r )
        {
           ll mid = l + r >> 1 ;
            if( arr[mid] >= q)
            r = mid ;
            else
             l = mid + 1 ;
        }
        
        if( arr[r] == q)
        {
           b[k++] = q;
        }
        else
        {}
    }
    sort(b , b + k) ;
    for( ll i = 0 ;  i < k ; i++)
    printf("%lld " , b[i]) ;
}

2024/4/6 17:41
加载中...