std::vector<int> v1 = {1, 2, 3};
v2 = std::vector<int>(v1.begin() + 1, v1.end());
// I'm Horrible Hyena
std::vector<int> v1 = {1, 2, 3};
v2 = std::vector<int>(v1.begin() + 1, v1.end());
vector<int> values = {35, 28, 34, 23};
vector<int> res;
// slice vector `values` from index 1 to the end
// and assgin the result to `res`
res.assign(values.begin() + 1, values.end());
// equivalent
vector<int> res1(values.begin() + 1, values.end());