반응형
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(void) {
cin.tie(NULL);
int n, m;
cin >> n >> m;
vector<string> arr;
vector<string> brr;
string tmp;
for (int i = 0; i < n; i++) {
cin >> tmp;
arr.push_back(tmp);
tmp.clear();
}
sort(arr.begin(), arr.end()); //정렬
for (int j = 0; j < m; j++) {
cin >> tmp;
if (binary_search(arr.begin(), arr.end(), tmp)) //이진탐색으로 입력받은 두번째값을 체크
{
brr.push_back(tmp);
}
}
sort(brr.begin(), brr.end());
cout << brr.size()<<endl;
for (int i = 0; i < brr.size(); i++)
{
cout << brr[i]<<'\n';
}
}
자꾸 시간초과가 떠서 아래 있는 분류표를 슬쩍 봤다
이진탐색을 사용하라고 있는 문제길래
algorithm에 있는 바이너리서치를 사용했다
입력이 많다보니 어쩔 수 없나보다
크게 사용한 트릭은 없으니 여기까지
반응형
'백준(알고리즘)' 카테고리의 다른 글
백준 11404 플로이드 (0) | 2021.01.09 |
---|---|
백준 18353 병사 배치하기 (0) | 2021.01.03 |
백준 2458 키순서 (0) | 2020.12.30 |
백준 10026 적록색약 (2) | 2020.12.27 |
백준 11722 가장 긴 감소하는 부분순열 (0) | 2020.12.26 |