#include <stdio.h>
#include <stdlib.h>
정렬
int compare(const void *a,const void *b) {
long long A=*(long long*)a;
long long B=*(long long*)b;
if(A>B) return 1;
else return -1;
}
long long num[500001];
long long num_m[500001];
//m에서 교집합 찾음
int binary(long long a,int size) {
int start=0;
int end=size-1;
while(start<=end) {
int mid=(start+end)/2;
if(num_m[mid]==a) {
return 1;
}
if(num_m[mid]<a) {
start=mid+1;
} else end=mid-1;
}
return 0;
}
int main() {
int n,m;
int cnt=0;
scanf("%d %d",&n, &m);
for(int i=0;i<n;i++) {
scanf("%lld",&num[i]);
}
for(int i=0;i<m;i++) {
scanf("%lld",&num_m[i]);
}
qsort(num,n,sizeof(long long),compare);
qsort(num_m,m,sizeof(long long),compare);
for(int i=0; i<n; i++){
if(!binary(num[i],m)) {
cnt++;
}
}
if(cnt==0){
printf("0");
}
if(cnt>0){
printf("%d\n",cnt);
for(int i=0; i<n; i++) {
if(!binary(num[i],m)) {
printf("%lld ",num[i]);
}
}
}
return 0;
}
To embed this project on your website, copy the following code and paste it into your website's HTML: