Cod sursa(job #1446776)

Utilizator felixiPuscasu Felix felixi Data 2 iunie 2015 20:52:08
Problema Dtcsu Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <fstream>
#include <vector>

using namespace std;

ifstream in("dtcsu.in");
ofstream out("dtcsu.out");

typedef long long I64;

const int NMAX = 276997;
const int MOD  = 666013;

vector <I64> H[MOD+1];

void Push_hash( I64 nr ) {
    int key = nr % MOD;
    H[key].push_back( nr );
}

bool Check_hash( I64 nr ) {
    int key = nr % MOD;
    for( int i = 0;  i < (int)H[key].size();  ++i ) {
        if( H[key][i] == nr )  return 1;
    }
    return 0;
}

int main() {
    for( int i = 1;  i <= NMAX;  ++i ) {
        I64 nr;  in >> nr;
        Push_hash( nr );
    }
    int Q, Ans = 0;
    in >> Q;
    for( int i = 1;  i <= Q;  ++i ) {
        I64 nr;  in >> nr;
        Ans += Check_hash( nr );
    }
    out << Ans << '\n';
    return 0;
}