본문 바로가기
Algorithm/Baekjoon

[백준/BOJ] 1920번 - 수 찾기 (C++)

by shine-jung 2021. 7. 17.
반응형

문제 링크

 

코딩하기 전 생각하기

/*
unordered_set을 선언한다.
n을 입력받고 n만큼 반복한다.
    정수를 입력받고 set에 저장한다.
m을 입력받고 m만큼 반복한다.
    정수를 입력받고 그 수가 set에 있는지 확인한다.
    set에 있으면 1을 출력하고 없으면 0을 출력한다.
*/

 


 

코드

#include <iostream>
#include <bits/stdc++.h>
#include <unordered_set>
using namespace std;

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);
    
    unordered_set<int> s;
    int n, m, a;
    cin >> n;
    for ( int i = 0; i < n; i++ ) {
        cin >> a;
        s.insert(a);
    }
    cin >> m;
    for ( int i = 0; i < m; i++ ) {
        cin >> a;
        if ( s.find(a) != s.end() ) cout << 1 << '\n';
        else cout << 0 << '\n';
    }
}

 


 

느낀점

 

ios::sync_with_stdio(0)과 cin.tie(0)으로 입출력 시간을 줄이니까 통과할 수 있었다.

이 문제를 풀었더니 우리 학교 백준랭킹에서 50등대가 되어서 기분이 좋았다.

 

(주의) 기록용으로 작성한 글입니다. 코드가 허접하거나 알고리즘의 효율이 낮을 수 있습니다.

댓글 환영합니다!

반응형

댓글