Cod sursa(job #2790540)

Utilizator Stefan_BircaBirca Stefan Stefan_Birca Data 29 octombrie 2021 10:43:30
Problema Dtcsu Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <bits/stdc++.h>
#define P 8191

using namespace std;

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

vector<long long> h[P];

bool Find(long long x)
{
    int r = x % P;
    for (auto e : h[r])
        if (e == x) return 1;
    return 0;
}

void Add(long long x)
{
    int r = x % P;
    if (!Find(x)) h[r].push_back(x);
}

int main()
{

    int i, q, cnt = 0;
    long long x;
    for (i = 1; i <= 276997; i++)
    {
        fin >> x;
        while (x % 2 == 0) x /= 2;
        Add(x);
    }
    fin >> q;
    for (i = 1; i <= q; i++)
    {
        fin >> x;
        cnt += Find(x);
    }
    fout << cnt << "\n";
    fin.close();
    fout.close();

    return 0;
}