728x90
반응형
문제는 여기!
#include <bits/stdc++.h>
using namespace std;
int NA, NB;
vector<int> va, vb, answer;
bool isln = false;
void solve() {
for(int i=0; i<NA; i++){
int x = va[i];
int left = 0, right = NB - 1;
isln = false;
while(left<=right){
int mid = (left + right)/2;
if(vb[mid] == x){
isln = true;
break;
}
if(x<vb[mid]) right = mid - 1;
else left = mid + 1;
}
if(!isln) answer.push_back(x);
}
}
void input() {
cin >> NA >> NB;
for(int i=0; i<NA; i++){
int x;
cin >> x;
va.push_back(x);
}
sort(va.begin(), va.end());
for(int i=0; i<NB; i++){
int x;
cin >> x;
vb.push_back(x);
}
sort(vb.begin(), vb.end());
}
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
input();
solve();
cout << answer.size() << '\n';
for(int i=0; i<answer.size(); i++) cout << answer[i] << ' ';
return 0;
}
728x90
반응형
'알고리즘 > 이진탐색' 카테고리의 다른 글
[백준/이진탐색/C++] 2512번 예산 (0) | 2023.03.16 |
---|---|
[백준/이진탐색/C++] 1920번 수 찾기 (0) | 2023.02.22 |