Pagini recente » Cod sursa (job #1798054) | Cod sursa (job #1666763) | Cod sursa (job #189051) | Cod sursa (job #1398396) | Cod sursa (job #1259021)
#include <fstream>
#include <vector>
#include <cstring>
const int NMAX = 10005;
using namespace std;
ifstream f("dtcsu.in");
ofstream g("dtcsu.out");
long long Q,nr,contor;
char s[20];
vector <long long> HH[NMAX];
void decode()
{
nr = 0;
int l = strlen(s);
long long p = 1;
for (int i = l-1; i >= 0; --i)
{
nr += int(s[i]-'0')*p;
p /= 10;
}
}
int key(long long nr)
{
return (nr % 10000);
}
void add(int nr)
{
HH[key(nr)].push_back(nr);
}
bool find(long long x)
{
int k = key(x);
for (int i = 0; i < HH[k].size(); ++i)
{
if (HH[k][i] == x)
return true;
}
return false;
}
int main()
{
for (int i = 1; i <= 276997; ++i)
{
f.getline(s,20);
nr = 0;
decode();
add(nr);
}
f >> Q;
f.getline(s,20);
for (int i = 1; i <= Q; ++i)
{
f.getline(s,20);
nr = 0;
decode();
if (find(nr))
contor++;
}
g << contor;
f.close();
g.close();
return 0;
}