Cod sursa(job #2908458)

Utilizator CReaper1116Shang Cheng Lin CReaper1116 Data 3 iunie 2022 16:46:27
Problema Dtcsu Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("dtcsu.in");
ofstream fout("dtcsu.out");
typedef long long ll;
const int mod = 100013;
vector <ll> v[mod];
int f(ll x){
     return x%mod;
}
void add(ll x){
     v[f(x)].push_back(x);
}
bool cauta(ll x){
     for(auto i:v[f(x)]){
          if(i == x)return 1;
     }
     return 0;
}
ll power2[] = {(ll)1<<32, 1<<16, 1<<8, 1<<4, 1<<2, 1<<1, 1};
int main()
{
     int i,n,ans = 0;
     ll a;
     for(i = 0;i < 276997;i++){
          fin>>a;
          if(a%2 == 1){
               add(a);
          }
     }
     fin>>n;
     for(i = 0;i < n;i++){
          fin>>a;
          if(a != 0){
               for (int j = 0; a % 2 && j < 7; ++j)
                    if (a % power2[j] == 0)
                         a/=power2[j];
          }
          ans+=cauta(a);
     }
     fout<<ans;
     return 0;
}