#include <iostream>
#include <vector>
#include <algorithm>
int main()
{
std::vector<int> sequenceA = {0, 1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13};
std::vector<int> sequenceB = {2, 4, 6, 8, 10, 12, 13};
std::vector<int> result;
std::stable_sort(sequenceA.begin(), sequenceA.end());
std::stable_sort(sequenceB.begin(), sequenceB.end());
int indexA = 0;
int indexB = 0;
while (indexA < sequenceA.size() && indexB < sequenceB.size()) {
const int valueA = sequenceA[indexA];
const int valueB = sequenceB[indexB];
if (valueA == valueB) {
result.push_back(valueA);
++indexA;
++indexB;
} else if (valueA < valueB) {
++indexA;
} else {
++indexB;
}
}
for (int value : result) {
std::cout << value << ", ";
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgoKaW50IG1haW4oKQp7CiAgICBzdGQ6OnZlY3RvcjxpbnQ+IHNlcXVlbmNlQSA9IHswLCAxLCAyLCA0LCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxM307CiAgICBzdGQ6OnZlY3RvcjxpbnQ+IHNlcXVlbmNlQiA9IHsyLCA0LCA2LCA4LCAxMCwgMTIsIDEzfTsKICAgIHN0ZDo6dmVjdG9yPGludD4gcmVzdWx0OwoKICAgIHN0ZDo6c3RhYmxlX3NvcnQoc2VxdWVuY2VBLmJlZ2luKCksIHNlcXVlbmNlQS5lbmQoKSk7CiAgICBzdGQ6OnN0YWJsZV9zb3J0KHNlcXVlbmNlQi5iZWdpbigpLCBzZXF1ZW5jZUIuZW5kKCkpOwoKICAgIGludCBpbmRleEEgPSAwOwogICAgaW50IGluZGV4QiA9IDA7CiAgICB3aGlsZSAoaW5kZXhBIDwgc2VxdWVuY2VBLnNpemUoKSAmJiBpbmRleEIgPCBzZXF1ZW5jZUIuc2l6ZSgpKSB7CiAgICAgICAgY29uc3QgaW50IHZhbHVlQSA9IHNlcXVlbmNlQVtpbmRleEFdOwogICAgICAgIGNvbnN0IGludCB2YWx1ZUIgPSBzZXF1ZW5jZUJbaW5kZXhCXTsKICAgICAgICBpZiAodmFsdWVBID09IHZhbHVlQikgewogICAgICAgICAgICByZXN1bHQucHVzaF9iYWNrKHZhbHVlQSk7CiAgICAgICAgICAgICsraW5kZXhBOwogICAgICAgICAgICArK2luZGV4QjsKICAgICAgICB9IGVsc2UgaWYgKHZhbHVlQSA8IHZhbHVlQikgewogICAgICAgICAgICArK2luZGV4QTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICArK2luZGV4QjsKICAgICAgICB9CiAgICB9CgogICAgZm9yIChpbnQgdmFsdWUgOiByZXN1bHQpIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgdmFsdWUgPDwgIiwgIjsKICAgIH0KCiAgICByZXR1cm4gMDsKfQ==