Cod sursa(job #1953714)

Utilizator 1475369147896537415369Andrei Udriste 1475369147896537415369 Data 4 aprilie 2017 23:08:17
Problema Dtcsu Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <bits/stdc++.h>
using namespace std;

unordered_set<long long> filter;
int Q, answer; long long X;

inline long long get_nr(){

    char c = getchar();
    long long number = 0;

    while(!(47 < c && c < 58)){
        c = getchar();
    }
    while(47 < c && c < 58){
        number = number * 10 + (c - '0');
        c = getchar();
    }return number;
}

int main(){

    freopen("dtcsu.in", "r", stdin);
    freopen("dtcsu.out", "w", stdout);

    for(int i = 1; i <= 276997; i++){
        X = get_nr();
        if((X & 1) == 1) filter.insert(X);
    }Q = get_nr();

    for(int i = 1; i <= Q; i ++ ) {
        X = get_nr();
        if((X & 1) == 0 && (X & (-X)) != 0) X /= (X & (-X));
        if(filter.count(X)) answer++;
    }printf("%d\n", answer);

    return 0;
}