Pagini recente » Cod sursa (job #176773) | Cod sursa (job #1480169) | Cod sursa (job #1438078) | Cod sursa (job #1519793) | Cod sursa (job #1046474)
#include <iostream>
#include <fstream>
#include <unordered_set>
using namespace std;
unordered_set < long long > S;
#define BUF_SIZE 4096
char buf[BUF_SIZE];
int pos = BUF_SIZE;
inline char getChar() {
if (pos == BUF_SIZE) {
fread(buf, 1, BUF_SIZE, stdin);
pos = 0;
}
return buf[pos++];
}
inline long long readInt() {
long long result = 0;
char c;
do {
c = getChar();
} while (!isdigit(c));
do {
result = 10LL * result + c - '0';
c = getChar();
} while (isdigit(c));
return result;
}
int main()
{
freopen("dtcsu.in", "r", stdin);
freopen("dtcsu.out", "w", stdout);
for ( int i = 1; i <= 276997; ++i )
{
long long nr = 0;
scanf("%lld", &nr);
nr /= ( nr & ( -nr ) );
S.insert( nr );
}
long long N, numb;
int number = 0;
N = readInt();
for ( long long i = 1; i <= N; ++i )
{
numb = readInt();
if ( numb )
{
numb /= ( numb & ( -numb ) );
number += S.count( numb );
}
}
printf("%d\n", number);
return 0;
}