Cod sursa(job #1135221)

Utilizator dragangabrielDragan Andrei Gabriel dragangabriel Data 7 martie 2014 15:10:36
Problema Dtcsu Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<set>
#define nmax 276997
using namespace std;
int n,i,j,k;
set<long long>s;
long long x;
char c[22];

long long numar(char* sir)
{
    int n=strlen(sir),i;
    long long nr=0;
    for (i=0; i<n; i++)
        nr=nr*10+(sir[i]-'0');
    return nr;
}

int main()
{
    freopen("dtcsu.in","r",stdin);
    freopen("dtcsu.out","w",stdout);
    for (i=1;i<=nmax;i++)
    {
        scanf("%s",c);
        x=numar(c);
        if (x&1) s.insert(x);
    }
    scanf("%d",&n);
    for (i=1;i<=n;i++)
    {
        scanf("%lld",&x);
        if (x!=0)
        {
            x/=(x&(-x));
            if (s.find(x)!=s.end()) k++;
        }
    }
    printf("%d\n",k);
    return 0;
}