You are viewing a single comment's thread. Return to all comments →
Solution in C++:
int getTotalX(vector<int> a, vector<int> b) { std::sort(a.begin(), a.end()); std::sort(b.begin(), b.end()); unordered_set<int> integers; int lower = a.back(), upper = b.front(); if(upper%lower) return 0; int mul = static_cast<unsigned int>(upper/lower); for(int i = 1; i <= mul; ++i) { int j = i*lower; bool isQualified = true; auto aa = a.rbegin(); while(aa != a.rend()) { if(j % *aa) { isQualified = false; break; } aa++; } if(isQualified) { auto bb = b.begin(); while(bb != b.end()) { if(*bb % j) { isQualified = false; break; } bb++; } } if(isQualified) integers.emplace(j); } return integers.size(); }
Seems like cookies are disabled on this browser, please enable them to open this website
Between Two Sets
You are viewing a single comment's thread. Return to all comments →
Solution in C++: