用set解决

oasis123 发表于 5个月前 · 关联问题 听礼炮

#include "iostream" #include "set" int main(int argc, char *argv[]) { // 计算setABC,然后把他们合并起来作count int setA[21], setB[21], setC[21]; int count = 0; int indexA = 0, indexB = 0, indexC = 0; //不能在这个for循环遍历的时候,判断放炮时间是否相同,时间是线性的,但是他们有的慢,有的快。 for (int i = 0; i < 21; ++i) { setA[i] = indexA; setB[i] = indexB; setC[i] = indexC; indexA += 5; indexB += 6; indexC += 7; } //unify这个三个集合 std::set<int> Union; for (int i = 0; i < 21; ++i) { Union.insert(setA[i]); Union.insert(setB[i]); Union.insert(setC[i]); } std::cout<<Union.size(); return 0; }