Cod sursa(job #2790562)

Utilizator CatalinCosminGirgoriu Cosmin CatalinCosmin Data 29 octombrie 2021 10:49:29
Problema Dtcsu Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <bits/stdc++.h>
#define P 8191
using namespace std;

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

vector <long long> h[P];

void Adauga (long long x)
{
    int r = x  % P;
    h[r].push_back (x);
}

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

int main()
{
    long long cnt = 0;
    long long x;
    for (int i = 1; i <= 276997; i++)
    {
        fin >> x;
        if (x > 0) x /= (x & (-x));
        Adauga (x);
    }
    int Q;
    fin >> Q;
    for (int i = 1; i <= Q; i++)
    {
        fin >> x;
        if (x > 0) x /= (x & (-x));
        cnt += Cauta(x);
    }
    fout << cnt << "\n";
    fout.close();
    return 0;
}