Pagini recente » Cod sursa (job #2030765) | Cod sursa (job #1969339) | Cod sursa (job #2664434) | Cod sursa (job #212386) | Cod sursa (job #1802682)
#include<fstream>
#include<vector>
using namespace std;
ifstream in("dtcsu.in");
ofstream out("dtcsu.out");
#define MOD 276997
bool bloom_filter[276997];
vector<unsigned long long> H[8192];
int main()
{
unsigned long long x;
for (int i = 1; i <= 276997; ++i)
{
in >> x;
H[x % 8192].push_back(x);
bloom_filter[x % MOD] = 1;
bloom_filter[(x+27) % MOD] = 1;
}
int Q,nr=0;
in >> Q;
for (int i = 1; i <= Q; ++i)
{
in >> x;
if (bloom_filter[x % MOD] & bloom_filter[(x + 27) % MOD])
{
nr += (x == 1);
for (vector <unsigned long long> ::iterator i = H[x % 8191].begin(), j = H[x % 8191].end(); i != j; i++)
if (*i == x) { nr++; break; }
}
}
out << nr;
return 0;
}