๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“ ์•Œ๊ณ ๋ฆฌ์ฆ˜/Code Tree

[์ฝ”๋“œํŠธ๋ฆฌ] Hash Set ์—ฐ์Šต๋ฌธ์ œ

by xxilliant 2023. 2. 9.
728x90
๋ฐ˜์‘ํ˜•

๋ฌธ์ œ : ๋ฐ์ดํ„ฐ ๋น„๊ต

์ •์ˆ˜๋กœ ์ด๋ฃจ์–ด์ง„ ๋‘ ์ˆ˜์—ด์„ ๋น„๊ตํ•˜์—ฌ ๊ฐ™์€ ์›์†Œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”์ง€ ํŒ๋‹จํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”.


์ž…๋ ฅ ํ˜•์‹

์ฒซ ๋ฒˆ์งธ ์ค„์—๋Š” ์ˆ˜์—ด 1์˜ ์›์†Œ์˜ ๊ฐœ์ˆ˜ n์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.

๋‘ ๋ฒˆ์งธ ์ค„์—๋Š” ์ˆ˜์—ด 1์˜ ์›์†Œ๋“ค์ด ๊ณต๋ฐฑ์„ ๋‘๊ณ  ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.

์„ธ ๋ฒˆ์งธ ์ค„์—๋Š” ์ˆ˜์—ด 2์˜ ์›์†Œ์˜ ๊ฐœ์ˆ˜ m์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.

๋„ค ๋ฒˆ์งธ ์ค„์—๋Š” ์ˆ˜์—ด 2์˜ ์›์†Œ๋“ค์ด ๊ณต๋ฐฑ์„ ๋‘๊ณ  ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.

  • 1 ≤ n, m ≤ 100,000
  •  ≤ ์ฃผ์–ด์ง€๋Š” ์ˆซ์ž์˜ ๋ฒ”์œ„ ≤ 

์ถœ๋ ฅ ํ˜•์‹

์ˆ˜์—ด 2์˜ ์›์†Œ์˜ ์ˆœ์„œ๋Œ€๋กœ ๊ทธ ์›์†Œ๊ฐ€ ์ˆ˜์—ด 1์— ์กด์žฌํ•˜๋Š” ์›์†Œ์ด๋ฉด 1์„, ์ˆ˜์—ด 1์— ์กด์žฌํ•˜์ง€ ์•Š๋Š” ์›์†Œ์ด๋ฉด 0์„ ๊ณต๋ฐฑ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

 

๋‚˜์˜ ํ’€์ด

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

int main() {
    unordered_set<int> s;
    int n; int m; int k;
    cin >> n;
    for(int i=0; i<n; ++i){
        cin >> k;
        s.insert(k);
    }
    cin >> m;
    for(int i=0; i<m; ++i){
        cin >> k;
        if(s.find(k) != s.end()) cout << 1 << " ";
        else cout << 0 << " ";
    }
    return 0;
}

 

๋ฌธ์ œ ์ถœ์ฒ˜ ์ฝ”๋“œํŠธ๋ฆฌ
728x90
๋ฐ˜์‘ํ˜•