Pagini recente » Cod sursa (job #2201770) | Cod sursa (job #2137941) | Cod sursa (job #2943368) | Cod sursa (job #2510085) | Cod sursa (job #1046469)
#include <iostream>
#include <fstream>
#include <unordered_set>
#include <algorithm>
using namespace std;
const int DIM_BUFF = ( 1 << 10 );
char buffer[DIM_BUFF];
int position = DIM_BUFF;
unordered_set < long long > S;
inline char GetChar()
{
if ( position == DIM_BUFF )
{
fread( buffer, 1, DIM_BUFF, stdin );
position = 0;
}
return buffer[ position++ ];
}
inline long long read()
{
long long nr = 0;
char c;
do
{
c = GetChar();
} while ( !isdigit( c ) );
do
{
nr = nr * 10LL + ( c - '0' );
c = GetChar();
} while ( isdigit( c ) );
return nr;
}
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;
scanf("%lld", &N);
for ( long long i = 1; i <= N; ++i )
{
scanf("%lld", &numb);
if ( numb )
{
numb /= ( numb & ( -numb ) );
number += S.count( numb );
}
}
printf("%d\n", number);
return 0;
}