#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
int n{ 0 };
int m{ 0 };
cin >> n;
vector <int> arr(n);
for (int i = 0; i < n; i++)
cin >> arr[i];
sort(arr.begin(), arr.end());
cin >> m;
for (int i = 0; i < m; i++)
{
int num{ 0 };
cin >> num;
if (binary_search(arr.begin(), arr.end(), num))
cout << "1\n";
else
cout << "0\n";
}
}
find 함수를 썼더니 시간초과가 나서 binary_search 함수를 사용했다.
그래도 똑같아서 가장 위의 두 코드를 사용해 cin, cout의 시간을 줄여줬다.
시간 초과는 해결되었으나 마지막 테스트 케이스에서 '틀렸습니다'가 나와서 인풋을 인덱스로 받아주고 bool it 을 생략해줬다.
통과!
구글링하니까 직접 이분 탐색 구현한 분이 많았다. 왜지?