BOJ_1920

Opusdeisong·2022년 12월 26일
0

백준 Class2

목록 보기
23/31


#BOJ1920

수 찾기

숫자만 찾는 것이라면 솔직히 그냥 찾으면 된다. 하지만 시간 제한과 수의 범위를 보니 누가 봐도 이건 이분탐색으로 코드를 만들어야 한다. 이분 탐색을 위해서는 먼저 배열이 정렬되어 있어야 하기 때문에 정렬된 배열에서 이분 탐색하는 코드만 만든다면 비교적 쉽게 코드를 완성할 수 있을 것 같다. 근데 심지어 algorithm Binary search가 미리 구현이 되어있다. 오 헤더의 신이시여 감사합니다. 저에게 이런 영광을 주시다니...

#include <iostream>
#include <algorithm>
using namespace std;

int main(){
   ios::sync_with_stdio(false);
   cin.tie(NULL);
   cout.tie(NULL);
   int N;
   cin >> N;
   int* arr = new int[N];
   for (int i = 0; i < N; i++) {
       cin >> arr[i];
   }
   sort(arr, arr + N);
   int M;
   cin >> M;
   for (int i = 0; i < M; i++) {
       int temp;
       cin >> temp;
       if (binary_search(arr, arr + N, temp)) cout << '1' << '\n';
       else cout << '0' << '\n';
   }
   return 0;
}
profile
Dorsum curvatum facit informaticum.

0개의 댓글