Cod sursa(job #1783832)

Utilizator PletoPletosu Cosmin-Andrei Pleto Data 19 octombrie 2016 15:42:56
Problema Dtcsu Scor 0
Compilator cpp Status done
Runda hash_excelenta Marime 0.73 kb
#include <fstream>
#include <vector>

using namespace std;

const int mod = (1<<13)-1;
vector <long long> H[mod];
long long X;
int Q, solution;

ifstream fin("dtcsu.in");
ofstream fout("dtcsu.out");

int isInHash(long long X)
{
    int w=X%mod;
    int N=H[w].size();
    for(int i=0; i<N; ++i)
    {
        if(H[w][i] == X)
            return 1;
    }
    return 0;
}

int main()
{
    for(int i=0; i<276997; ++i)
    {
        fin>>X;
        if(X%2==1)
        {
            H[X%mod].push_back(X);
        }
    }
    fin>>Q;
    for(int i=0; i<Q; ++i)
    {
        fin>>X;
        if(X!=0) while(X%2==0) X/=2;
        solution += isInHash(X);
    }
    fin.close();
    fout.close();
    return 0;
}