Cod sursa(job #1732276)

Utilizator antanaAntonia Boca antana Data 21 iulie 2016 12:55:52
Problema Dtcsu Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <fstream>
#include<vector>
#include<ctype.h>
#define MOD1 8191
#define BUF_SIZE 131072
#define MAXN 276997

using namespace std;
vector<long long>v[MOD1];

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

inline int check(long long x)
{
    int key1=(x&MOD1), sz;

    sz=v[key1].size();
    for(int i=0;i<sz;++i)
        if(v[key1][i] == x)
            return 1;
    return 0;
}
int main()
{
    long long x, q, nr=0;

    for(int i=1;i<=MAXN;++i)
    {
        f>>x;
        if((x&1)) v[(x&MOD1)].push_back(x);
    }

    f>>q;
    for(int i=1;i<=q;++i)
    {
        f>>x;
        while(!(x&1))
            x=(x>>1);
        nr+=check(x);
    }

    g<<nr;
    return 0;
}