🗒 1764번 문제

📌 binary_search 함수를 사용해서 듣보잡 찾기 ❗️
1️⃣ vector를 이용해서 보지 못한 사람과 결과 값을 넣는다.
2️⃣ 입력한 string 값을 vector에 push_back()
3️⃣ binary_search할 수 있도록 sort함수를 사용해서 vector를 정렬
4️⃣ 듣지 못한 사람 string를 입력하면서 보지 못한 사람 vector에 존재하는 지 확인
-> binary_search 사용
5️⃣ 만약에 보지도 듣지도 못했다면 result vector에 push_back()하고 그 수를 세기
6️⃣ 사전순으로 출력해야 하기에 result도 sort함수를 사용해서 vector 정렬
➰ 코드로 나타낸 1764번 ➰
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
int main() {
int notsee = 0, nothear = 0;
int count = 0;
vector<string> seeVector;
vector<string> result;
cin >> nothear >> notsee;
for (int i = 0; i < nothear; i++) {
string s;
cin >> s;
seeVector.push_back(s);
}
sort(seeVector.begin(), seeVector.end());
for (int i = 0; i < notsee; i++) {
string s;
cin >> s;
if(binary_search(seeVector.begin(), seeVector.end(), s)) {
result.push_back(s);
count++;
}
}
cout << count << endl;
sort(result.begin(), result.end());
for (string s : result)
cout << s << endl;
return 0;
}