문제링크 : https://www.acmicpc.net/problem/10815
#include<bits/stdc++.h>
using namespace std;
int N, M;
vector<int> card;
int BinarySearch(int lt, int rt, int num){
if(lt > rt) return 0;
else{
int mid = (lt+rt) / 2;
if(card[mid] == num){
return 1;
}
else if(card[mid] > num){
return BinarySearch(lt, mid-1, num);
}
else{
return BinarySearch(mid+1, rt, num);
}
}
}
int main(){
/// cin.tie(0)을 안썻다고.... 시간초과가 떳다....
/// 앞으로 그냥 scanf를 써야하는것인가..?
cin.tie(0);
ios_base::sync_with_stdio(false);
// freopen("../input.txt","rt",stdin);
cin >> N;
int tmp;
for(int i=0; i<N; i++){
cin >> tmp;
card.push_back(tmp);
}
sort(card.begin(), card.end());
cin >> M;
for(int i=0; i<M; i++){
cin >> tmp;
cout << BinarySearch(0, card.size()-1, tmp) << '\n';
}
return 0;
}
cin.tie(0)때문에... 시간초과에 걸렸는데... 이를 디버깅하느라 너무 오래걸렸다 저번에 endl때문에 당했는데 또 이렇게 당하네 ㅋㅋㅋㅋㅋ. 그냥 앞으로는 scanf와 printf를 사용할것이다.