Pagini recente » Cod sursa (job #997857) | Cod sursa (job #1029839) | Cod sursa (job #2553163) | Cod sursa (job #1306511) | Cod sursa (job #2206024)
#include <bits/stdc++.h>
#define SMAX 16384
#define N 276997
using namespace std;
char s[SMAX];
int p;
FILE *f;
void read(uint32_t &x) {
x = 0;
for (; s[p] >= '0' && s[p] <= '9'; ++p) {
x = 10 * x + s[p] - '0';
if (p == SMAX - 1) {
fread(s, 1, SMAX, f);
p = -1;
}
}
for (; s[p] < '0' || s[p] > '9'; ++p) {
if (p == SMAX - 1) {
fread(s, 1, SMAX, f);
p = -1;
}
}
}
unordered_set<uint16_t> H;
int main() {
f = fopen("dtcsu.in", "r");
FILE* g = fopen("dtcsu.out", "w");
hash<uint32_t> hfunc;
fread(s, 1, SMAX, f);
p = 0;
for (int i = 0; i < N; ++i) {
uint32_t x;
read(x);
uint16_t hv = (uint16_t) hfunc(x);
H.insert(hv);
}
uint32_t n;
read(n);
int k = 0;
while (n--) {
uint32_t x;
read(x);
if (H.find((uint16_t) hfunc(x)) != H.end()) {
++k;
}
}
fprintf(g, "%d\n", k);
return 0;
}