std::vector addArray(std::vector a, std::vector b) { int max = -2000000000, min = 2000000000; map num1; for (int i = 0; i < a.size(); i++) { num1[a[i]] = true; } map num2; for (int i = 0; i < b.size(); i++) { if (num1[b[i]]) { num2[b[i]] = true; if (b[i] > max) max = b[i]; if (b[i] < min) min = b[i]; } } vector result; for (int i = min; i <= max; i++) { if (num2[i]) result.push_back(i); } return result; }