zoukankan      html  css  js  c++  java
  • hash --C++

    题目来源:code[VS]

    这是一个极其无聊的hash题。。。。

    1230 元素查找

    题目描述 Description

    给出n个正整数,然后有m个询问,每个询问一个整数,询问该整数是否在n个正整数中出现过。

    输入描述 Input Description

    第一行两个整数 n 和m。

    第二行n个正整数(1<=n<= 100000)

    第三行m个整数(1<=m<=100000)

    输出描述 Output Description

    一共m行,若出现则输出YES,否则输出NO

    样例输入 Sample Input

    4 2

    2 1 3 4

    1 9

    样例输出 Sample Output

    YES

    NO

    数据范围及提示 Data Size & Hint

    所有数据都不超过10^8

     
    #include <cstdio>
    #include <vector>
    #define maxn 100007
    
    using namespace std;
    
    vector<int> a[maxn];
    
    int main()
    {
        int n,m;
        scanf("%d%d",&n,&m);
        for (int i = 0; i<n; i++)
        {
            int x;
            scanf("%d",&x);
            a[x % maxn].push_back(x);
        }
        
        for (int i = 0; i<m; i++)
        {
            int x;
            scanf("%d",&x);
            int b = 1,k = a[x % maxn].size();
            for (int j = 0; j<k; i++)
                if (a[x % maxn][j] == x)
                {
                    b = 0;
                    printf("YES
    ");
                    break;
                }
            if (b) printf("NO
    ");
            
        } 
    }
  • 相关阅读:
    Rotate Image
    Color Sort
    Chapter 3: Binary Tree
    Different Ways to Add Parentheses
    最短路径问题
    Longest Palindromic Substring
    Word Break
    PCA和SVD简述
    Set Matrix Zeros
    星级评价
  • 原文地址:https://www.cnblogs.com/songer/p/5308302.html
Copyright © 2011-2022 走看看