#include <iostream>
#include <vector>
using namespace std;
vector<int> get_intersection(vector<int> &a, vector<int> &b) {
int i = 0;
int j = 0;
vector<int> out;
while (i != a.size() && j != b.size()) {
if (a[i] == b[j]) {
out.push_back(a[i]);
//if (i < a.size()) {
i++;
//}
//if (j < a.size()) {
j++;
//}
}
else if (a[i] < b[j]) {
//if (i < a.size()) {
i++;
//}
}
else if (a[i] > b[j]) {
//if (j < b.size()) {
j++;
//}
}
}
return out;
}
int main() {
// your code goes here
vector<int> a = {1,4,7,10,13};
vector<int> b = {1,3,5,5,7,13};
vector<int> out = get_intersection(a, b);
for (auto &e: out) {
cout << e << " ";
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdmVjdG9yPGludD4gZ2V0X2ludGVyc2VjdGlvbih2ZWN0b3I8aW50PiAmYSwgdmVjdG9yPGludD4gJmIpIHsKCWludCBpID0gMDsKCWludCBqID0gMDsKCXZlY3RvcjxpbnQ+IG91dDsKCQoJd2hpbGUgKGkgIT0gYS5zaXplKCkgJiYgaiAhPSBiLnNpemUoKSkgewoJCWlmIChhW2ldID09IGJbal0pIHsKCQkJb3V0LnB1c2hfYmFjayhhW2ldKTsKCQkJLy9pZiAoaSA8IGEuc2l6ZSgpKSB7CgkJCQlpKys7CgkJCS8vfQoJCQkvL2lmIChqIDwgYS5zaXplKCkpIHsKCQkJCWorKzsKCQkJLy99CgkJfQoJCWVsc2UgaWYgKGFbaV0gPCBiW2pdKSB7CgkJCS8vaWYgKGkgPCBhLnNpemUoKSkgewoJCQkJaSsrOwoJCQkvL30KCQl9CgkJZWxzZSBpZiAoYVtpXSA+IGJbal0pIHsKCQkJLy9pZiAoaiA8IGIuc2l6ZSgpKSB7CgkJCQlqKys7CgkJCS8vfQoJCX0KCX0KCQoJcmV0dXJuIG91dDsKfQoKaW50IG1haW4oKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCgkKCXZlY3RvcjxpbnQ+IGEgPSB7MSw0LDcsMTAsMTN9OwoJdmVjdG9yPGludD4gYiA9IHsxLDMsNSw1LDcsMTN9OwoJCgl2ZWN0b3I8aW50PiBvdXQgPSBnZXRfaW50ZXJzZWN0aW9uKGEsIGIpOwoJCglmb3IgKGF1dG8gJmU6IG91dCkgewoJCWNvdXQgPDwgZSA8PCAiICI7Cgl9CgkKCXJldHVybiAwOwp9