20pts,玄关
查看原帖
20pts,玄关
747917
ygwlan楼主2023/11/19 20:55
#include <bits/stdc++.h>
#define I using
#define AK namespace
#define IOI std
I AK IOI;
int n,m;
int a[100009];
struct node{
	int id,val;
}b[100009];
int len=0;
bool cmp(node x,node y){
	return x.id<y.id;
}
int bin(int x){
	int l=1,r=n;
	while(l<=r){
		int mid=(l+r)/2;
		if(a[mid]==x){
			return mid;
		}
		else if(a[mid]>x)
			r=mid-1;
		else l=mid+1;
	}
	return 0;
}
int main(){
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++){
		scanf("%d",&a[i]);
	}
	int x;
	sort(a+1,a+1+n);
	while(~scanf("%d",&x)){
		if(bin(x))b[++len].id=bin(x),b[len].val=a[bin(x)];
	}
	sort(b+1,b+1+len,cmp);
	for(int i=1;i<=len;i++){
		printf("%d ",b[i].val);
	}
	return 0;
}


2023/11/19 20:55
加载中...