#include <iostream>
#include <vector>
#include <algorithm>
using std::cout;
using std::endl;
using std::vector;
using std::unique;
using std::distance;
void unique_output(const vector<int>& v){
vector<int> vv(v);
auto it = unique(vv.begin(), vv.end());
vv.resize(distance(vv.begin(), it));
for_each(vv.begin(), vv.end(), [](int w){
cout << w << ' ';
});
cout << endl;
}
int main(){
vector<int> a = {1, 2, 3, 4, 6, 5, 2, 3, 4, 1, 2, 5, 1, 3, 6, 5};
vector<int> b = {1, 2, 3, 4, 4, 6, 5, 5, 2, 2, 2, 2, 2, 3, 4, 3, 2, 1};
unique_output(a);
unique_output(b);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgogCnVzaW5nIHN0ZDo6Y291dDsKdXNpbmcgc3RkOjplbmRsOwogCnVzaW5nIHN0ZDo6dmVjdG9yOwp1c2luZyBzdGQ6OnVuaXF1ZTsKdXNpbmcgc3RkOjpkaXN0YW5jZTsKIAp2b2lkIHVuaXF1ZV9vdXRwdXQoY29uc3QgdmVjdG9yPGludD4mIHYpewoJdmVjdG9yPGludD4gdnYodik7CglhdXRvIGl0ID0gdW5pcXVlKHZ2LmJlZ2luKCksIHZ2LmVuZCgpKTsKCXZ2LnJlc2l6ZShkaXN0YW5jZSh2di5iZWdpbigpLCBpdCkpOwoJZm9yX2VhY2godnYuYmVnaW4oKSwgdnYuZW5kKCksIFtdKGludCB3KXsKCQljb3V0IDw8IHcgPDwgJyAnOwoJfSk7Cgljb3V0IDw8IGVuZGw7Cn0KCmludCBtYWluKCl7Cgl2ZWN0b3I8aW50PiBhID0gezEsIDIsIDMsIDQsIDYsIDUsIDIsIDMsIDQsIDEsIDIsIDUsIDEsIDMsIDYsIDV9OwoJdmVjdG9yPGludD4gYiA9IHsxLCAyLCAzLCA0LCA0LCA2LCA1LCA1LCAyLCAyLCAyLCAyLCAyLCAzLCA0LCAzLCAyLCAxfTsKCgl1bmlxdWVfb3V0cHV0KGEpOwoJdW5pcXVlX291dHB1dChiKTsKCglyZXR1cm4gMDsKfQo=