본문 바로가기
백준일지

[백준] 2776번 암기왕

by 민지기il 2025. 1. 13.
#include <bits/stdc++.h>
#define fastio cin.tie(0)->sync_with_stdio(0)
using namespace std;

int main() {
    fastio;
    int T;
    cin >> T; // 테스트 케이스 개수 입력

    while (T--) {
        int N1, N2;

        // 수첩 1 입력
        cin >> N1;
        vector<int> v1(N1);
        for (int i = 0; i < N1; i++) {
            cin >> v1[i];
        }

        // 수첩 1 정렬
        sort(v1.begin(), v1.end());

        // 수첩 2 입력 및 검색
        cin >> N2;
        for (int i = 0; i < N2; i++) {
            int b;
            cin >> b;
            if (binary_search(v1.begin(), v1.end(), b)) {
                cout << 1 << '\n';
            } else {
                cout << 0 << '\n';
            }
        }
    }

    return 0;
}

 

<입력>

첫째 줄에 테스트케이스의 개수 T가 들어온다.

다음 줄에는 ‘수첩 1’에 적어 놓은 정수의 개수 N(1 ≤ N ≤ 1,000,000)이 입력으로 들어온다.

그 다음 줄에  ‘수첩 1’에 적혀 있는 정수들이 N개 들어온다.

그 다음 줄에는 ‘수첩 2’에 적어 놓은 정수의 개수 M(1 ≤ M ≤ 1,000,000) 이 주어지고, 다음 줄에 ‘수첩 2’에 적어 놓은 정수들이 입력으로 M개 들어온다. 모든 정수들의 범위는 int 로 한다.

 

<풀이>

vector로 수첩1의 숫자를 입력받았다. 이후 binary_search로 해결하였다.

'백준일지' 카테고리의 다른 글

[백준] 11663번 선분 위의 점  (0) 2025.01.15
[백준] 1654번 랜선 자르기  (0) 2025.01.14
[C++] STL 알고리즘: Sort  (0) 2024.09.13
[C++] STL 자료구조: bitset  (0) 2024.05.10
[C++] STL 자료구조: Pair, Tuple  (0) 2024.05.09