Pagini recente » Cod sursa (job #1368890) | Cod sursa (job #1766247) | Cod sursa (job #241712) | Cod sursa (job #1934548) | Cod sursa (job #1035893)
#include <iostream>
#include <fstream>
#include <tr1/unordered_set>
using namespace std;
tr1::unordered_set <long long> G;
int main()
{
ifstream in("dtcsu.in");
ofstream out("dtcsu.out");
int q,nr=0;
long long x;
int n=276997;
while(n--)
{
in>>x;
if(x%2)
G.insert(x);
}
in>>q;
while(q--)
{
in>>x;
if(x%2==0)
x=x/(x&(-x));
if(G.count(x))
nr++;
}
out<<nr;
return 0;
}
/*
...(276997 linii)
3
1
13
10
citesti primele 279000 numere
si le bagi intr-un hash doar pe cele impare
si apoi pt. fiecare query
il imparti la 2 pana ajunge impar
si apoi verifici daca e in hash*/