My goal is to generate vector with pattern {1} given max_=2, {1,2,1} given max_=3, {1,2,1,3,1,2,1} given max_=4... etc
Here is my psuedocode:
std::vector<int> generate_zimin(int max_)
{
    if(max_ == 2)
    {
        return {1};
    }
    else
    {
        return {generate_zimin(max_-1), (max_-1), generate_zimin(max_-1)};
    }
}
How do I insert vectors into an anonymous vector?
edit:
std::vector<int> generate_zimin(std::vector<int> current, int max_)
{
    if(max_ == 2)
    {
        return {1};
    }
    else
    {
        std::vector<int> prev = generate_zimin(current, max_-1);
        current.insert(current.end(), std::begin(prev), std::end(prev));
        current.push_back(max_-1);
        current.insert(current.end(), std::begin(prev), std::end(prev));
        return current;
    }
}
looks a lot less elegant, and I was just trying to avoid that, but I can see why I was wrong.
 
    