Pagini recente » Cod sursa (job #292268) | Cod sursa (job #359945) | Cod sursa (job #820914) | Cod sursa (job #1699085) | Cod sursa (job #1132495)
#include<fstream>
#include<vector>
#include<algorithm>
#include<string.h>
using namespace std;
long long x;
int N,sol;
string aux;
vector <long long> v;
int main() {
ifstream in("dtcsu.in");
ofstream out("dtcsu.out");
int i,st,dr,mij;
for(i=1;i<=276997;i++) {
x=0;
getline(in,aux);
for(i=0;i<aux.size();++i)
x=x*10+(aux[i]-'0');
if(x%2==1)
v.push_back(x);
}
sort(v.begin(),v.end());
in>>N;
getline(in,aux);
for(i=1;i<=N;i++) {
x=0;
getline(in,aux);
for(i=0;i<aux.size();++i)
x=x*10+aux[i]-'0';
if(x) {
x=x/(x&(-x));
st=0;dr=v.size()-1;
while(st<=dr) {
mij=(st+dr)/2;
if(v[mij]==N) {
st=dr+1;
sol++;
}
if(v[mij]<x)
st=mij+1;
if(v[mij]>x)
dr=mij-1;
}
}
}
out<<sol<<'\n';
in.close();
out.close();
return 0;
}