#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
template<typename T>
std::vector<T> newArr(const std::vector<T>& vec)
{
return std::vector<T> (std::find(std::begin(vec), std::end(vec), 0),
std::end(vec));
}
template<typename T>
void print(const std::vector<T>& arr)
{
std::copy(std::begin(arr), std::end(arr), std::ostream_iterator<T>(
std::cout, " "));
std::cout << std::endl;
}
int main()
{
std::vector<int> arr1 = {
1, 2, 3, 0, 0, 1
};
std::vector<int> arr2 = {
1, 2, 3, 4, 5, 0
};
std::vector<int> arr3 = {
1, 2, 3
};
print(newArr(arr1));
print(newArr(arr2));
print(newArr(arr3));
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8aXRlcmF0b3I+Cgp0ZW1wbGF0ZTx0eXBlbmFtZSBUPgpzdGQ6OnZlY3RvcjxUPiBuZXdBcnIoY29uc3Qgc3RkOjp2ZWN0b3I8VD4mIHZlYykKewogICAgcmV0dXJuIHN0ZDo6dmVjdG9yPFQ+IChzdGQ6OmZpbmQoc3RkOjpiZWdpbih2ZWMpLCBzdGQ6OmVuZCh2ZWMpLCAwKSwgCiAgICAgICAgc3RkOjplbmQodmVjKSk7Cn0KCnRlbXBsYXRlPHR5cGVuYW1lIFQ+CnZvaWQgcHJpbnQoY29uc3Qgc3RkOjp2ZWN0b3I8VD4mIGFycikKewogICAgc3RkOjpjb3B5KHN0ZDo6YmVnaW4oYXJyKSwgc3RkOjplbmQoYXJyKSwgc3RkOjpvc3RyZWFtX2l0ZXJhdG9yPFQ+KAogICAgICAgIHN0ZDo6Y291dCwgIiAiKSk7CiAgICBzdGQ6OmNvdXQgPDwgc3RkOjplbmRsOwp9CgppbnQgbWFpbigpCnsKICAgIHN0ZDo6dmVjdG9yPGludD4gYXJyMSA9IHsKICAgICAgICAxLCAyLCAzLCAwLCAwLCAxCiAgICB9OwogICAgCiAgICBzdGQ6OnZlY3RvcjxpbnQ+IGFycjIgPSB7CiAgICAgICAgMSwgMiwgMywgNCwgNSwgMAogICAgfTsKICAgIAogICAgc3RkOjp2ZWN0b3I8aW50PiBhcnIzID0gewogICAgICAgIDEsIDIsIDMKICAgIH07CiAgICAKICAgIHByaW50KG5ld0FycihhcnIxKSk7CiAgICBwcmludChuZXdBcnIoYXJyMikpOwogICAgcHJpbnQobmV3QXJyKGFycjMpKTsKICAgIAp9